DataGrid中添加ComboBox问题

wbj_ake 2012-11-19 04:47:23
做DataGrid添加一列ComboBox的有趣问题

相位列是采用ComboBox的列
代码如下:

<dg:DataGridTemplateColumn Header="相位" Width="60">
<dg:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Path=相位}"></TextBlock>
</DataTemplate>
</dg:DataGridTemplateColumn.CellTemplate>
<dg:DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<ComboBox x:Name="PhaseSelect"
SelectedItem="{Binding Path=相位,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
ItemsSource="{Binding Source={StaticResource PhasePeriod}}"
IsReadOnly="True"
DisplayMemberPath="Day" SelectedValuePath="Index"
SelectionChanged="PhaseSelect_SourceUpdated" />
</DataTemplate>
</dg:DataGridTemplateColumn.CellEditingTemplate>
</dg:DataGridTemplateColumn>

当我双击相位列的时候能够出现下拉列表

鼠标离开后能够出现选中的行

当我再次点击DataGrid的时候,我选中的项就不见!!!



求各位大侠,伸出援手,解救解救!!


...全文
91 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wbj_ake 2012-11-21
  • 打赏
  • 举报
回复
谢谢各位了,问题解决了,接分吧
austin_luobj 2012-11-21
  • 打赏
  • 举报
回复
需要双向绑定  <TextBlock Text="{Binding Path=相位,Mode = TwoWay}" />
Architecture Net 2012-11-20
  • 打赏
  • 举报
回复
首先你可以看看你更改的时候是否将选择的相位值更新到实体上的Text="{Binding Path=相位},这里木有双向绑定吧~~~ 即使实体更新了。你这里也没有将实体的更新显示出来。

8,737

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧