首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在SelectedValue中设置FrameworkElementFactory绑定

在SelectedValue中设置FrameworkElementFactory绑定
EN

Stack Overflow用户
提问于 2014-09-25 13:19:59
回答 1查看 1.4K关注 0票数 1

首先,对我的英语感到抱歉。我有个问题,我想不出怎么解决。我有一个包含finalList对象的列表( list )。我在DataGrid中动态地创建列和行。我有一个生成行的List>。我的问题是,当我创建一个FrameworkElement类型(TextBox)时,绑定非常有效。但是,当我使用combobox创建框架元素时,我可以看到选项,但不能设置SelectedValueBinding。因此,组合框显示选项,但不要以选定的开头。

这就是我动态创建列的方式。

代码语言:javascript
复制
FrameworkElementFactory frameElementFactory = new FrameworkElementFactory(typeof(ComboBox)); 
itemsSourceBinding.Source = finalList;
frameElementFactory.SetBinding(ComboBox.ItemsSourceProperty, itemsSourceBinding);

这是我的XAML

代码语言:javascript
复制
<DataGrid x:Name="UC_CopyReferenceGrid" HorizontalScrollBarVisibility="Auto"  VerticalScrollBarVisibility="Auto" Grid.Row="0" AutoGenerateColumns="False" CanUserAddRows="False" CanUserDeleteRows="False"  Margin="10,10,246,10"></DataGrid>

我需要将绑定添加到FrameworkElementFactory中。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-25 14:01:52

ItemsSource绑定是否正常工作?如果是这样,则绑定SelectedValue的过程或多或少是相同的。

代码语言:javascript
复制
frameElementFactory.SetBinding(
    Selector.SelectedValueProperty,
    new Binding {
        Path = new PropertyPath(ContentControl.ContentProperty), // ?
        Mode = BindingMode.TwoWay
    }
);

我对绑定路径并不乐观;它应该与其他列相同。

通常,当逻辑值是ItemsSource中项的子属性时使用SelectedValuePath,在这种情况下,您可能还需要使用SelectedValuePath属性来指定属性路径。否则,您可以简单地使用SelectedItem

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26039703

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档