我正在尝试创建自己的 GridViewColumn 并在绑定方面遇到一些问题。
有人可以向我解释为什么以下 Header-binding 确实有效
<GridViewColumn x:Class="interneProzesse_UebersetzungstoolNS.TranslateGridViewColumn"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:conv="clr-namespace:interneProzesse_UebersetzungstoolNS.Converter"
xmlns:hk="clr-namespace:interneProzesse_UebersetzungstoolNS.Hilfsklassen"
xmlns:local="clr-namespace:interneProzesse_UebersetzungstoolNS"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300"Header="{Binding RelativeSource={RelativeSource Self}, Path=Sprache, UpdateSourceTrigger=PropertyChanged}">
</GridViewColumn>
虽然它在这里失败了?
<GridViewColumn x:Class="interneProzesse_UebersetzungstoolNS.TranslateGridViewColumn"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:conv="clr-namespace:interneProzesse_UebersetzungstoolNS.Converter"
xmlns:hk="clr-namespace:interneProzesse_UebersetzungstoolNS.Hilfsklassen"
xmlns:local="clr-namespace:interneProzesse_UebersetzungstoolNS"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300">
<GridViewColumn.Header>
<GridViewColumnHeader Content="{Binding RelativeSource={RelativeSource AncestorType={x:Type local:TranslateGridViewColumn}}, Path=Sprache, UpdateSourceTrigger=PropertyChanged}"/>
</GridViewColumn.Header>
<GridViewColumn>
Sprache
是我的 TranslateGridViewColumn 的一个属性,它继承自 GridViewColumn。