【问题标题】:Checkbox: Content-binding based on multiple fields复选框:基于多个字段的内容绑定
【发布时间】:2014-09-04 11:53:11
【问题描述】:

我目前有一个 comboboxcheckboxes 作为项目。

        <ComboBox Height="25" Width="70" HorizontalAlignment="Left" Name="cbDivision" VerticalAlignment="Center">
            <ComboBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal">
                        <CheckBox Tag="{Binding DivID}" Content="{Binding DivDescr}" Checked="CheckBox_Checked" Unchecked="CheckBox_Unchecked" ></CheckBox>
                    </StackPanel>
                </DataTemplate>
            </ComboBox.ItemTemplate>
        </ComboBox>

我想将这些文本框中的内容格式更改为:

DivDescr(DivID)

我尝试使用以下方法,但到目前为止没有运气:

Content="{Binding DivDescr(Binding DivID)}"
Content="{Binding DivDescr}({Binding DivID})"

谁能指出正确的答案?

感谢您的宝贵时间

【问题讨论】:

  • 这是 Silverlight 还是 WPF,因为这会改变事情?
  • 银光。抱歉将删除标签。一定是在某处误点击了
  • 那么我认为最简单的方法是创建将返回 DivDescr(DivID) 的串联属性并绑定到该属性
  • @dkozl Jups 似乎给我带来了正确的格式。谢谢你。那么Multibinding是仅 WPF 的解决方案吗?
  • 不幸的是,是的。 Silverlight 已从 MultiBindingIMultiValueConverter 等内容中删除

标签: silverlight data-binding


【解决方案1】:

绑定的目标必须是属性,而不是方法。根据您的 xaml,绑定到的对象似乎已经具有 DivID,因此我将创建一个属性来包装您尝试进行的调用。

public string DivDescrResult
{
    get { return DivDescr(DivID);}
}
...
Content="{Binding DivDescrResult}"

【讨论】:

    猜你喜欢
    • 2022-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-28
    • 1970-01-01
    相关资源
    最近更新 更多