翻譯|使用教程|編輯:龔雪|2024-09-20 10:43:11.450|閱讀 106 次
概述:本文主要介紹如何解決使用DevExpress WPF的網(wǎng)格控件進(jìn)行行聚焦和選擇時(shí)遇到的常見(jiàn)問(wèn)題,歡迎下載最新版組件體驗(yàn)!
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
DevExpress WPF擁有120+個(gè)控件和庫(kù),將幫助您交付滿足甚至超出企業(yè)需求的高性能業(yè)務(wù)應(yīng)用程序。通過(guò)DevExpress WPF能創(chuàng)建有著強(qiáng)大互動(dòng)功能的XAML基礎(chǔ)應(yīng)用程序,這些應(yīng)用程序?qū)W⒂诋?dāng)代客戶的需求和構(gòu)建未來(lái)新一代支持觸摸的解決方案。 無(wú)論是Office辦公軟件的衍伸產(chǎn)品,還是以數(shù)據(jù)為中心的商業(yè)智能產(chǎn)品,都能通過(guò)DevExpress WPF控件來(lái)實(shí)現(xiàn)。
本文將幫助用戶解決使用DevExpress WPF的網(wǎng)格控件時(shí)關(guān)于行聚焦和選擇的常見(jiàn)問(wèn)題。
DevExpress技術(shù)交流群10:532598169 歡迎一起進(jìn)群討論
問(wèn)題
DevExpress WPF GridControl在啟動(dòng)時(shí)自動(dòng)聚焦第一行。
解決方案
禁用屬性,在這種情況下,DevExpress WPF GridControl在啟動(dòng)時(shí)不聚焦或不選擇任何行。
注意:一旦最終用戶聚焦一行,GridControl至少包含一個(gè)聚焦行。
問(wèn)題
不能聚焦GridControl中的任何單元格或行。
解決方案
若要在GridControl中允許行和單元格焦點(diǎn),請(qǐng)驗(yàn)證GridControl的屬性是否設(shè)置為Cell。
問(wèn)題
當(dāng)GridControl的ItemsSource被重置時(shí),GridControl會(huì)重新生成它的所有行。
解決方案
要在GridControl中保留選擇、焦點(diǎn)、展開(kāi)的主行和其他行設(shè)置,必須手動(dòng)將這些設(shè)置保存到本地變量,您現(xiàn)在可以重置ItemsSource并手動(dòng)恢復(fù)保存的值。
問(wèn)題
當(dāng)GridControl失去焦點(diǎn)時(shí),所選行的顏色會(huì)逐漸消失。
解決方案
將視圖的屬性設(shè)置為false。
問(wèn)題
格式條件樣式的優(yōu)先級(jí)低于聚焦行背景顏色。
解決方案
要顯示突出顯示的單元格和行,處理和事件。
問(wèn)題
如果使用多行選擇并在代碼中設(shè)置屬性,則聚焦的行不會(huì)突出顯示;只有虛線邊框可見(jiàn)。
解決方案
啟用多重選擇后,和屬性引用不同的項(xiàng)。管理當(dāng)前關(guān)注的項(xiàng),而用于被選中的對(duì)象,若要聚焦和突出顯示一行,請(qǐng)指定這兩個(gè)屬性。
問(wèn)題
在后面的代碼中更改和屬性之后,您就不能打開(kāi)被聚焦單元格的編輯器。如果目標(biāo)行位于視窗之外,則可能發(fā)生這種情況。
解決方案
由于虛擬化機(jī)制,GridControl應(yīng)該為目標(biāo)數(shù)據(jù)行初始化相應(yīng)的項(xiàng)。為了防止在打開(kāi)單元格編輯器時(shí)出現(xiàn)問(wèn)題,在更新和屬性后,使用方法調(diào)用 方法。
C#
gridControl.CurrentItem = Items.First(); Dispatcher.BeginInvoke(new Action(() => { tableView.ShowEditor(true); }));
問(wèn)題
您希望阻止選擇某些行和單元格。
解決方案
處理以下事件:, , 和。
問(wèn)題
將ViewModel屬性綁定到GridControl的屬性,即使在用戶選擇行之后,該屬性也返回null。
解決方案
確保用一個(gè)空集合初始化ViewModel的屬性,GridControl將選定的項(xiàng)添加到現(xiàn)有集合中,它不會(huì)在每次選擇更改時(shí)創(chuàng)建新集合。
問(wèn)題
用戶只能在Ctrl或Shift鍵的幫助下選擇行,它們無(wú)法僅通過(guò)觸摸手勢(shì)選擇多行。
解決方案
要啟用對(duì)觸摸友好的多行選擇,將屬性設(shè)置為。
問(wèn)題
如果 屬性設(shè)置為行或單元格,則啟用多選擇。
解決方案
如果不啟用多選功能,請(qǐng)將設(shè)置為None。
問(wèn)題
GridControl在其單元格編輯器關(guān)閉時(shí)失去鍵盤焦點(diǎn),如果GridControl位于容器(如ScrollViewer)內(nèi),則可能發(fā)生此問(wèn)題,容器控件可以竊取鍵盤焦點(diǎn)。
解決方案
禁用容器的 屬性。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都網(wǎng)