绑定来自不同xaml的数据(矢量绘图)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了绑定来自不同xaml的数据(矢量绘图)相关的知识,希望对你有一定的参考价值。

我有一个带有绘制区域的xaml文件。在这种情况下,它是一个矩形。

<Grid Background="White">
     <Path x:Name="str1" Data="M60,80 L239.5,79.5 239.5,199.5 59.5,199.5 z" Fill="#FFAEAEB4" HorizontalAlignment="Left" Height="150" Margin="4,0,0,0" Stretch="Fill" Stroke="Black" VerticalAlignment="Top" Width="291"/>
</Grid>

的.cs

 public partial class Page1 : Page
        {
            public Page1()
            {
                InitializeComponent();
            }
        }

在第二个xaml文件中,我有一个带有TextBox的表单

<TextBox HorizontalAlignment="Left" Height="23" TextWrapping="Wrap" Text="200" VerticalAlignment="Top" Width="120" TextAlignment="Right"/>

的.cs

 public partial class Geometry_1 : Page
{
    public Geometry_1()
    {
        InitializeComponent();
    }

}

如何绑定要自动绑定的数据?在将数据输入字段后,矩形的尺寸将动态更改。

这是两个不同的xaml文件。

我创建了一个矢量绘图,它将根据表单中的给定数据更改其大小

答案

你应该使用数据绑定:

 <Grid Background="White">
      <Path x:Name="str1" 
       Data="M60,80 L239.5,79.5 239.5,199.5 59.5,199.5 z" 
       Fill="#FFAEAEB4" 
       HorizontalAlignment="Left" 
       Height="{Binding ElementName=YSizeTextBox, Path=Text}"
       Margin="4,0,0,0" 
       Stretch="Fill"  
       Stroke="Black"  
       VerticalAlignment="Top" 
       Width={Binding ElementName=XSizeTextBox, Path=Text}"/>

 </Grid>

然后:

 <TextBox x:Name="XSizeTextBox" HorizontalAlignment="Left" Height="23" TextWrapping="Wrap" Text="200" VerticalAlignment="Top" Width="120" TextAlignment="Right"/>

如果你想从一个字段设置它们,你应该使用IValueConverter

以上是关于绑定来自不同xaml的数据(矢量绘图)的主要内容,如果未能解决你的问题,请参考以下文章

在资源有效的情况下使用来自WPF中的Inkscape的矢量图形

XAML:相同的模板,不同的绑定

WPF实用小工具

《深入浅出WPF》学习笔记之绘图和动画

XAML 绑定到 CompositeCollection

如何在后面的代码中绑定嵌入的图像