/// <summary>
/// 根据条件设置按钮图标以及注释
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void repositoryItemButtonEdit1_CustomDrawButton(object sender, DevExpress.XtraEditors.Controls.CustomDrawButtonEventArgs e)
{
//根据按钮的位置获取其选择的行
var hitIno = gridView2.CalcHitInfo(e.Bounds.Location);
if (hitIno.RowHandle < 0)
{
return;
}
if (e.Button.Caption == "选址选线")
{
e.Button.ToolTip = m_MyProjectObjs[hitIno.RowHandle].Operator;
e.Button.Image = imageCollection1.Images[m_MyProjectObjs[hitIno.RowHandle].ImageIndex];
}
else
{
e.Button.Image = m_MyProjectObjs[hitIno.RowHandle].Result ? imageCollection1.Images[1] : imageCollection1.Images[2];
e.Button.ToolTip = m_MyProjectObjs[hitIno.RowHandle].Result ? "已完成预可研工作" : "未完成预可研工作";
}
}
核心方法:repositoryItemButtonEdit1_CustomDrawButton
m_MyProjectObjs 是自己定义的一个集合,为gridControl的DataSource, 根据所在行的ID获取属性来设置对应按钮的图标和提示信息等属性。