DataGrid的幾個小技巧

2021-04-12 20:00:36 字數 1121 閱讀 4472

方法一:使用模版列

我們在繫結好資料的datagrid增加乙個模版列,在列中放置乙個按鈕

然後我們在datagrid的itemdatabound中新增以下**

switch(e.item.itemtype)

}datagrid在繫結資料的時候將觸發此事件,而且每行觸發一次.我們可以通過e.item獲得行,而通過e.item.itemtype獲得行型別.

方法二:使用按鈕列

我們在繫結好資料的datagrid增加乙個刪除按鈕列

然後我們在datagrid的itemdatabound中新增以下**

switch(e.item.itemtype)

}可以看到我們這裡獲得控制項引用的方法有所不同,使用了e.item.cells[4].controls[0],而沒有使用e.item.findcontrol("b***elete"),因為我

們現在使用的是按鈕列,不能對按鈕列的按鈕設定id屬性,而findcontrol是通過id來查詢控制項(當然我們也可以把前面的**用

e.item.cells[4].controls[0]的**來替換.).

繫結好乙個datagrid

switch(e.item.itemtype)

case(listitemtype.header):

}這裡我們用到了e.item.itemindex,獲取來自 datagrid 控制項的 items 集合的 datagriditem 物件的索引.

繫結好乙個datagrid,設定允許分頁,設定頁導航為上下型,一會我們將強制把上面的頁導航更換成標題行.這裡我想講一下datagrid的行構成

最上面pager,用來放置分頁導航,然後是表頭header,接著是item和alternatingitem專案和交替專案(當然還有selecteditem選中項和edititem

編輯項等),然後是footer表腳,最下面還有乙個pager.因為pager行是系統自動產生的,所以在itemdatabound事件中不能捕獲此行,這裡我使用了

itemcreated事件,新增**如下

switch(e.item.itemtype)

first=!first;

break;}}

這裡的first用來判斷是上面的pager還是下面的pager.

c builder的幾個小技巧

1.設定全屏 設定視窗的windowstate屬性為wsmaximized 2.去掉標題欄 設定borderstyle為bsnone 3.additional控制項欄的speedbutton可以設定屬性flat為true,則為透明狀。4.設定背景 additional控制項欄的image設定屬性pi...

ExtJS的幾個小技巧

一 如何禁用或者啟用某個選單 有的時候,有時會根據需要,啟用或者禁用某個選單項,在extjs中,可以通過如下的操作進行。1ext.onready function 8var stylemenu newext.menu.menu 26 27 31 32 33tb.add 34 二 如何設定datefi...

NuGet的幾個小技巧

因為視覺化庫程式包管理器的侷限性,有很多需要的功能在介面中無法完成。以下技巧均需要在 程式包管理器控制台 中使用命令來完成。一 改變專案目標框架後,更新程式包 當改變專案的目標框架後,無論是公升級還是降級,都會導致專案中引用的元件不是最合適此框架下的版本,nuget會自動出現乙個警告提示重新更新一下...