1、通过控件名字绑定数据

  结构为{Binding #控件名.属性};示例如下:

<TextBox Name="other"/>
  <TextBlock Text="{Binding #other.Text}"/>
  • 1.
  • 2.
2、绑定父类数据
(1)基础使用

 结构为{Binding $parent.属性};示例如下:

<StackPanel Tag="Hello World!" Margin="0,10,0,0" Background="AliceBlue">
    <TextBlock Text="{Binding $parent.Tag}"/>
</StackPanel>
  • 1.
  • 2.
  • 3.
(2)指定序列

 结构为{Binding $parent[序列].属性}(父类需同类型);示例如下:

<StackPanel Tag="指定序列!需要父类同类型" Margin="0,10,0,0" Background="WhiteSmoke">
    <StackPanel>
        <StackPanel>
            <TextBlock Text="{Binding $parent[2].Tag}"/>
        </StackPanel>
    </StackPanel>
</StackPanel>
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
(3)指定类型

 结构为{Binding $parent[类型].属性};示例如下:

<StackPanel Tag="指定类型" Margin="0,10,0,0"  Background="AliceBlue">
    <Decorator>
        <TextBlock Text="{Binding $parent[StackPanel].Tag}"/>
    </Decorator>
</StackPanel>
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
(4)指定类型与指定序列组合

 结构为{Binding $parent[类型;序列].属性};示例如下:

<Border Tag="指定类型与指定序列组合" Margin="0,10,0,0"  Background="WhiteSmoke">
    <Border>
        <Decorator>
            <TextBlock Text="{Binding $parent[Border;1].Tag}"/>
        </Decorator>
    </Border>
</Border>
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
3、绑定VIewModel

  见:.Net-Avalonia学习笔记(四)-MVVM 中的Binding用法。

作者:꧁执笔小白꧂