wpf - 与 System DataType 的 DataTemplate 绑定(bind)

标签 wpf binding mvvm

这可能是一个愚蠢的问题,或者我搜索了错误的单词:
我有一个 ComboBox 并想使用自定义转换器显示 double (显示等效分数)。
在 DataTemplate 中,我必须指定一个 DataType,它是 Double,但我不知道如何指定它。我相信有一个简单的方法可以做到这一点!

将系统命名空间添加到窗口不会编译

<Window ... xmlns:sys="clr-namespace:System" ...>

只需在 DataType 中键入 Double 或 System.Double 也不行。

并且为简单的 Double-Type 定义 ViewModel 也不是解决方案,不是吗?!

到目前为止,这是我的代码:
<ComboBox ItemsSource="{Binding Gains}" SelectedItem="{Binding Gain, Mode=TwoWay}">
    <ComboBox.Resources>
        <DataTemplate DataType=" ??????? fract">
            <TextBlock Text="{Binding ., Converter=fractConverter}"/>
        </DataTemplate>
    </ComboBox.Resources>
</ComboBox>

完整解决方案:

使用 System 命名空间作为 sys: 有效!
Gains 是一个列表
增益是双倍的
<Window ... xmlns:sys="clr-namespace:System;assembly=mscorlib" ...>

组合框的工作方式如下:
<ComboBox ItemsSource="{Binding Gains}" SelectedItem="{Binding Gain, Mode=TwoWay}">
    <ComboBox.Resources>
        <DataTemplate DataType="{x:Type sys:Double}">
            <TextBlock Text="{Binding ., Converter={StaticResource realConverter}}"/>
        </DataTemplate>
    </ComboBox.Resources>
</ComboBox>

最佳答案

像这样:

 <DataTemplate DataType="{x:Type sys:Double}">

关于wpf - 与 System DataType 的 DataTemplate 绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8836022/

相关文章:

c# - 随机分配 Button 的内容

wpf - 如何在 wpf mvvm 中将数据网格行与文本框绑定(bind)

WPF ListBox ListBoxItem 绑定(bind)

c# - 当只有一个图钉时,如何确定 Bing map 的正确缩放级别?

c# - GridView WPF MVVM中TextBox的TextChanged事件

python - opencv 3.0.0-dev python 绑定(bind)无法正常工作

wpf - 从 MVVM 动态添加控件到 View

text - 按钮和链接上的 Kendo UI 文本绑定(bind)

c# - MVVM 事件处理程序属于哪里

c# - WPF 项目中的语义版本控制