您好,登錄后才能下訂單哦!
Dev WPF界面開發中如何實現操作,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
通過DevExpress WPF Controls,您能創建有著強大互動功能的XAML基礎應用程序,這些應用程序專注于當代客戶的需求和構建未來新一代支持觸摸的解決方案。
系統背景
平臺:WPF
產品:DXGrid for WPF
本文將演示如何將WcfInstantFeedbackDataSource或WcfServerModeDataSource與DXGrid一起使用,以及如何通過特殊行為在應用程序中實現CRUD操作(例如,添加、刪除、編輯)。
該測試需要在您的計算機上安裝SQL Express服務。
我們為GridControl創建了WCFServerModeCRUDBehavior和WCFInstantModeCRUDBehavior附加操作,例如:
<dxg:GridControl> <i:Interaction.Behaviors> <crud:WCFServerModeCRUDBehavior ...> <crud:WCFServerModeCRUDBehavior.DataSource/> <dxsm:LinqServerModeDataSource .../> </crud:WCFServerModeCRUDBehavior.DataSource> </crud:WCFServerModeCRUDBehavior> </i:Interaction.Behaviors> </dxg:GridControl>
WCFServerModeCRUDBehavior和WCFInstantModeCRUDBehavior類包含NewRowForm和EditRowForm屬性,以提供"Add Row"和"Edit Row"操作。使用這些屬性,可以根據需要創建添加和編輯表單:
<DataTemplate x:Key="EditRecordTemplate"> <StackPanel Margin="8" MinWidth="200"> <Grid> <Grid.ColumnDefinitions> <ColumnDefinition/> <ColumnDefinition/> </Grid.ColumnDefinitions> <Grid.RowDefinitions> <RowDefinition/> <RowDefinition/> </Grid.RowDefinitions> <TextBlock Text="ID:" VerticalAlignment="Center" Grid.Row="0" Grid.Column="0" Margin="0,0,6,4" /> <dxe:TextEdit x:Name="txtID" Grid.Row="0" Grid.Column="1" EditValue="{Binding Path=Id, Mode=TwoWay}" Margin="0,0,0,4" /> <TextBlock Text="Name:" VerticalAlignment="Center" Grid.Row="1" Grid.Column="0" Margin="0,0,6,4" /> <dxe:TextEdit x:Name="txtCompany" Grid.Row="1" Grid.Column="1" EditValue="{Binding Path=Name, Mode=TwoWay}" Margin="0,0,0,4" /> </Grid> </StackPanel> </DataTemplate> <crud:WCFServerModeCRUDBehavior NewRowForm="{StaticResource ResourceKey=EditRecordTemplate}" EditRowForm="{StaticResource ResourceKey=EditRecordTemplate}"/>
此操作類需要您的數據模型中的以下信息:
EntityObjectType - 行的類型;
DataServiceContext - DataServiceContext類型的對象;
PropertiesList - 表列的列表;
PrimaryKey - 數據庫表的主鍵;
DataSource - WcfInstantFeedbackDataSource或WcfServerModeDataSource類型的對象。
<dxg:GridControl> <i:Interaction.Behaviors> <crud:WCFInstantModeCRUDBehavior EntityObjectType="{x:Type sr:Item}" DataSource="{Binding ElementName=wcfInstantSource}" DataServiceContext="{Binding DataSource.DataServiceContext, RelativeSource={RelativeSource Self}}"/> </i:Interaction.Behaviors> </dxg:GridControl>
helper.PropertiesList.Add("Id"); helper.PropertiesList.Add("Name");
請參閱WcfInstantFeedbackDataSource和WcfServerModeDataSource類以了解有關WcfInstantFeedbackDataSource和WcfServerModeDataSource的更多信息。
操作類的后代支持以下命令:NewRowCommand、RemoveRowCommand、EditRowCommand,您可以輕松地將交互控件與這些命令綁定在一起。 例如:
<crud:WCFServerModeCRUDBehavior x:Name="helper"/> <StackPanel Grid.Row="1" Orientation="Horizontal" HorizontalAlignment="Center"> <Button Height="22" Width="60" Command="{Binding Path=NewRowCommand, ElementName=helper}">Add</Button> <Button Height="22" Width="60" Command="{Binding Path=RemoveRowCommand, ElementName=helper}" Margin="6,0,6,0">Remove</Button> <Button Height="22" Width="60" Command="{Binding Path=EditRowCommand, ElementName=helper}">Edit</Button> </StackPanel>
默認情況下,WCFServerModeCRUDBehavior和WCFInstantModeCRUDBehavior解決方案支持以下最終用戶交互功能:
最終用戶可以通過雙擊網格行或在AllowKeyDownActions屬性為True的情況下按Enter鍵來編輯選定的行值。
如果AllowKeyDownActions屬性為True,則最終用戶可以通過Delete鍵刪除選定的行。
最終用戶可以通過NewRowCommand、RemoveRowCommand和EditRowCommand命令添加、刪除和編輯新行。
關于Dev WPF界面開發中如何實現操作問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。