繁体   English   中英

在DataTemplate中绑定控件的属性

Binding the control's property in its DataTemplate

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我有一个自定义控件,我修改了ListView。 我有一个DataTemplate,它将每个项目显示为宽度为128的图标,并在其下方显示一个标签。

<DataTemplate x:Key="AeroIconTemplate">
    <Grid VerticalAlignment="Top" Margin="0">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition/>
        </Grid.RowDefinitions>
        <Image Grid.Row="0" Source="{Binding Image}" Width="128"
               MaxHeight="128" Margin="0"/>
        <TextBlock Grid.Row="1" Text="{Binding Title}" Foreground="Black"
                   TextWrapping="WrapWithOverflow" Margin="0" 
                   TextTrimming="CharacterEllipsis" Width="128" MaxHeight="60" />
    </Grid>
</DataTemplate>

现在我已经向ListView本身添加了一个名为IconSize的属性。 这需要16到256之间的整数。

我想将绑定WidthMaxHeight中的ImageWidth的的TextBlock这个属性。 因此,每当更改IconSize属性时,都会调整模板的大小。 正如您所看到的,我目前正在将一些内容绑定到数据对象 (图像源和标签文本),但在这种情况下,我想绑定到ListView 控件

我该怎么做呢?

谢谢!

1 个回复

您可以使用RelativeSource

... Width="{Binding IconSize,RelativeSource={RelativeSource AncestorType=ListView}}" ...

请务必定义正确的类型,因为WPF ListView没有属性IconSize 您可能需要定义您的课程。

2 在DataTemplate中绑定控件属性的最佳实践?

我看到这些年来,人们问了很多问题,关于如何最好地与数据模板内的数据绑定,是否有最佳实践? 在这种情况下,我希望我的MemoryCopyBtn复制当前选定的MemoryListItem TextBox的文本,以便可以在ViewModel中对其进行处理。 我可以使用Findname找到Lis ...

4 绑定DataGridTemplateColumn中的DataTemplate控件

我绑定了DataGrid,其中的项是对{Prop1,Prop2}的ObservableCollection 如何将TextBox Text属性绑定到Prop1? 我尝试了如上所示,但是它不起作用(看起来TextBox的数据上下文设置为主窗口)。 ...

5 在DataTemplate中时的绑定控件

我正在尝试将组合框的字体系列绑定到另一个组合框的字体系列。 它工作正常,直到我将数据模板放入要从中提取的组合框中。 请参见下面的代码: 我可以正常访问SS0,但是当我尝试访问SS1时,它将失败。 我尝试过使用RelativeSource,但对于在这种情况下如何使用它感到困惑。 ...

7 绑定到DataTemplate中的UserControl属性

我有一个由TextBlock和两个按钮组成的UserControl中的简单数据模板。 DataContext设置为对象列表。 一个按钮和TextBlock绑定到该对象的属性,但是我需要一个按钮绑定到UserControl的属性。 我可以使用RelativeSource尝试找到UC的类, ...

9 使用MVVM将命令绑定到DataTemplate中的控件

MVVM的新手,我试图了解如何将命令绑定到数据模板中包含的控件。 这是我的XAML当前的样子: 需要明确的是,我可以使用视图模型将可观察的集合绑定到ListBox。 我有一个看起来像这样的视图模型类: 我已经尝试过通过以下方式绑定命令: 但是我不知道在哪里定义事件? ...

10 在DataTemplate中绑定用户控件Datacontext

我在TabItem内有两个usercontrols。 TabItem拥有自己的ViewModel,该ViewModel具有TabItem的子ContentControl内容绑定到的属性。 此属性表示另一个视图模型,它将根据视图模型的不同来更改视图。 这是一个例子: 这是用作Tabi ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2021 STACKOOM.COM