原創|其它|編輯:郝浩|2012-01-12 03:05:53.000|閱讀 5863 次
概述:本文主要介紹DevExpress XtraGrid自定義焦點行的方法,希望對大家有幫助。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
自定義焦點行的方法:
gridView_bcode.FocusedRowHandle = focuseRowInt;
//通過設置GridView 的FocusedRowHandle屬性
view plaincopy to clipboardprint?
//獲取焦點行任意單元格的數據
ColumnView cv = (ColumnView)gridControl_Gongzi.FocusedView;
//重新獲取此ID 否則無法從表頭連刪獲取不到id
int focusedhandle = cv.FocusedRowHandle;
object rowIdObj = gridView1.GetRowCellValue(focusedhandle, "id");
if (DBNull.Value != rowIdObj)
{
FocusedRow_id = Convert.ToInt32(rowIdObj);
}
//獲取焦點行任意單元格的數據
ColumnView cv = (ColumnView)gridControl_Gongzi.FocusedView;
//重新獲取此ID 否則無法從表頭連刪獲取不到id
int focusedhandle = cv.FocusedRowHandle;
object rowIdObj = gridView1.GetRowCellValue(focusedhandle, "id");
if (DBNull.Value != rowIdObj)
{
FocusedRow_id = Convert.ToInt32(rowIdObj);
}
view plaincopy to clipboardprint?
//當數據發生變化時執行
private void gridView1_CellValueChanged
(object sender, CellValueChangedEventArgs e)
{
int intRowHandle = e.RowHandle;
FocusedRow_bumen =
Convert.ToString(gridView1.GetRowCellValue(intRowHandle, "bumen"));
FocusedRow_xingming =
Convert.ToString(gridView1.GetRowCellValue(intRowHandle, "xingming"));
//FocusedRow_jibengongzi =
Convert.ToDecimal(gridView1.GetRowCellValue(intRowHandle, "jibengongzi"));
object rowJibengongziObj =
gridView1.GetRowCellValue(intRowHandle, "jibengongzi");
if (DBNull.Value != rowJibengongziObj)
{
FocusedRow_jibengongzi =
Convert.ToDecimal(rowJibengongziObj);
}
}
//當數據發生變化時執行
private void gridView1_CellValueChanged
(object sender, CellValueChangedEventArgs e)
{
int intRowHandle = e.RowHandle;
FocusedRow_bumen =
Convert.ToString(gridView1.GetRowCellValue(intRowHandle, "bumen"));
FocusedRow_xingming =
Convert.ToString(gridView1.GetRowCellValue(intRowHandle, "xingming"));
//FocusedRow_jibengongzi =
Convert.ToDecimal(gridView1.GetRowCellValue(intRowHandle, "jibengongzi"));
object rowJibengongziObj =
gridView1.GetRowCellValue(intRowHandle, "jibengongzi");
if (DBNull.Value != rowJibengongziObj)
{
FocusedRow_jibengongzi =
Convert.ToDecimal(rowJibengongziObj);
}
} view plaincopy to clipboardprint?
//設置焦點行的焦點單元格的位置
ColumnView view =
(ColumnView)gridControl_Gongzi.FocusedView;
view.FocusedColumn =
view.Columns["bumen"];
//設置焦點行的焦點單元格的位置
ColumnView view =
(ColumnView)gridControl_Gongzi.FocusedView;
view.FocusedColumn =
view.Columns["bumen"]; view plaincopy to clipboardprint?
//當焦點行發生改變時執行 獲取選中焦點行id
private void gridView1_FocusedRowChanged
(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
{
int intRowHandle = e.FocusedRowHandle;
object rowIdObj = gridView1.GetRowCellValue(intRowHandle, "id");
if (DBNull.Value != rowIdObj)//做個判斷否則獲取不到id后報錯
{
FocusedRow_id = Convert.ToInt32(rowIdObj);
}
}
//當焦點行發生改變時執行 獲取選中焦點行id
private void gridView1_FocusedRowChanged
(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
{
int intRowHandle = e.FocusedRowHandle;
object rowIdObj = gridView1.GetRowCellValue(intRowHandle, "id");
if (DBNull.Value != rowIdObj)//做個判斷否則獲取不到id后報錯
{
FocusedRow_id = Convert.ToInt32(rowIdObj);
}
}
view plaincopy to clipboardprint?
//焦點行的FocusedHandle為:
FocuseRow_Handle = -999998;
//獲取焦點行的handle
ColumnView newview = (ColumnView)gridControl_Gongzi.FocusedView;
FocuseRow_Handle = newview.FocusedRowHandle;
//回車添加新行
private void gridView1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == 13)
{
ColumnView view = (ColumnView)gridControl_Gongzi.FocusedView;
if(view.IsLastRow)
{
if (FocuseRow_Handle == 0)
{
gridView1.AddNewRow();
ColumnView newview = (ColumnView)gridControl_Gongzi.FocusedView;
newview.FocusedColumn = newview.Columns["bumen"];//定位焦點網格的位置
FocuseRow_Handle = newview.FocusedRowHandle;
//獲取新焦點行的FocuseRowHandle 并初始化全局變量FocuseRow_Handle供保存操作時判斷是update還是insert
}
(慧都控件網版權所有,轉載請注明出處,否則追究法律責任)
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:網絡轉載