C# 4.0 将wpf datagrid中选定的单选按钮存储回远程数据库
问题一致强烈同意不一致强烈不同意C# 4.0 将wpf datagrid中选定的单选按钮存储回远程数据库,c#-4.0,C# 4.0,问题一致强烈同意不一致强烈不同意 问题1 o 问题2 o 问题3 o o : : : o表示单选按钮 每个问题有4个单选按钮供选择 大家好 我在wpf应用程序中有一个datagrid作为上面的模板。我通过web方法从远程数据库检索所有问题 我对单选按钮使用以下xaml代码: <Grid.Resources> <DataTemplate x:Key="AgreeTemplate" > <RadioButton GroupName
问题1 o
问题2 o
问题3 o o
: : : o表示单选按钮
每个问题有4个单选按钮供选择 大家好 我在wpf应用程序中有一个datagrid作为上面的模板。我通过web方法从远程数据库检索所有问题 我对单选按钮使用以下xaml代码:
<Grid.Resources>
<DataTemplate x:Key="AgreeTemplate" >
<RadioButton GroupName="{Binding Path=question}" IsChecked="{Binding Agree, Mode=TwoWay}" Background="Purple" Height="30" />
</DataTemplate>
<DataTemplate x:Key="StronglyAgreeTemplate" >
<RadioButton GroupName="{Binding Path=question}" IsChecked="{Binding StroglyAgree, Mode=TwoWay}" Background="Purple" Height="30" />
</DataTemplate>
<DataTemplate x:Key="DisagreeTemplate" >
<RadioButton GroupName="{Binding Path=question}" IsChecked="{Binding Disagree, Mode=TwoWay}" Background="Purple" Height="30" />
</DataTemplate>
<DataTemplate x:Key="StronglyDisagreeTemplate" >
<RadioButton GroupName="{Binding Path=question}" IsChecked="{Binding StronglyDisagree, Mode=TwoWay}" Background="Purple" Height="30" />
</DataTemplate>
</Grid.Resources>
<DataGrid Name="dataGridFeedback" AutoGenerateColumns="False" Canvas.Left="9" Canvas.Top="6" Height="613" Width="1523" FontFamily="Comic Sans MS" FontSize="20" CanUserAddRows="false" CanUserDeleteRows="False" GridLinesVisibility="All" HeadersVisibility="All" AlternatingRowBackground="BlanchedAlmond" RowDetailsVisibilityMode="Visible" CanUserResizeColumns="False" CanUserResizeRows="False" CanUserSortColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="Questions" Width="800" IsReadOnly="True" Binding="{Binding Path=question}" />
<DataGridTemplateColumn Header="Agree" Width="180" IsReadOnly="True" CellTemplate="{StaticResource AgreeTemplate}" />
<DataGridTemplateColumn Header="Strongly Agree" Width="180" IsReadOnly="True" CellTemplate="{StaticResource StronglyAgreeTemplate}" />
<DataGridTemplateColumn Header="Disagree" Width="180" IsReadOnly="True" CellTemplate="{StaticResource DisagreeTemplate}" />
<DataGridTemplateColumn Header="Strongly Disagree" Width="180" IsReadOnly="True" CellTemplate="{StaticResource StronglyDisagreeTemplate}" />
</DataGrid.Columns>
</DataGrid>
但是,所有单选按钮都与[GroupName=“{Binding Path=question}]”具有相同的组名,我如何知道用户是否选择了哪个答案
另一个问题是,用于定义所有这些单选按钮是否正确?wpf datagrid中是否有要使用的datagrid行属性
最后,如何将每个问题的选定单选按钮存储回远程数据库
请引导我。提前谢谢。坏主意。如果每个问题有4个单选按钮,则只需检查一个单选按钮,因此答案上的信息量与整数值0..3相同。即使每个问题有256个按钮,也只需要1个字节存储在数据库中。所以,要存储问题的答案,您只需要一个整数值——一个“仅选中”单选按钮的数字,每个问题只需要一个按钮 而且,你的问题在意识形态上是非常错误的。您需要存储数据,而不是UI的状态。您需要有一个数据层及其与UI的绑定,就是这样。所有数据管理都应该使用数据层,而不是UI。数据更新后,应该会触发UI表示的更改 关于这一点,我建议您学习并分析以下体系结构模式的适用性(http://en.wikipedia.org/wiki/Architectural_pattern_(计算机科学)[^]): 注意这些架构的动机。如果你理解它,你将能够创造出更好的设计理念
MVVM — Model View View Model,
http://en.wikipedia.org/wiki/Model_View_ViewModel[^],
MVC — Model-View-Controller,
http://en.wikipedia.org/wiki/Model-view-controller[^]),
MVA — Model-View-Adapter,
http://en.wikipedia.org/wiki/Model–view–adapter[^],
MVP — Model-View-Presenter,
http://en.wikipedia.org/wiki/Model-view-presenter[^].