Development/Winform

[Devexpress] Add Button on Grid Control Column

Tiger Tom 2020. 2. 7. 11:53

-- GridView Option
   : OptionsView ShowButtonMode ShowAlways
-- In-Place Editor Repository
  = Add Button Editor Add(name : open_File, name : open_NoFile)
  : AllowMouseWheel = false
  : AutoHeight : = false
  : Buttons : Glyph
  : TextEditorStyle : HideTextEditor
  
// Grid _CustomRowCellEdit event에서 repository
 private void GvMainList_CustomRowCellEdit(object sender, DevExpress.XtraGrid.Views.Grid.CustomRowCellEditEventArgs e)
        {
            GridView view = sender as GridView;
            if (view == null) return;
            if (e.RowHandle < 0) return;

//Check Column 
            if (e.Column.FieldName == "CFILEYN")
            {
//Check Column Value 
                if (view.GetRowCellValue(e.RowHandle, "CFILEYN").ToString().ToUpper() == "OPEN")
                {
                    e.RepositoryItem = gcMainList.RepositoryItems["open_File"];
                }
                else
                {
                    e.RepositoryItem = gcMainList.RepositoryItems["open_NoFile"];
                }
            }
        }
//Event 생성
orepositoryItemButtonEdit1.ButtonClick += new DevExpress.XtraEditors.Controls.ButtonPressedEventHandler(this.SFileOpen);
private void SFileOpen(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
{
//Check file
 DataRow dataRow = gvMainList.GetFocusedDataRow();
     string strSFILEOPEN = dataRow.Field("SFILEYN") != null ? dataRow.Field("SFILEYN").ToString().ToUpper() : "";
 if (!string.IsNullOrEmpty(FileName.ToString().Trim()))
 {
 //File Down
 }
}