Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#XAML绑定_C#_Wpf_Textbox_Line - Fatal编程技术网

C#XAML绑定

C#XAML绑定,c#,wpf,textbox,line,C#,Wpf,Textbox,Line,我正在尝试使用XAML和C#实现一个接口。我创建了一个带有堆栈面板的XAML,在这个堆栈面板中我有一个最小和最大宽度的文本框,下面有一行。我想根据文本框的长度更改行的长度,以便在我正在编写的文本框中添加下划线(文本框随着插入的文本而增加其宽度),但是当我这样做时 <StackPanel Canvas.Left="410" Canvas.Top="111"> <TextBox MinWidth="30" MaxWidth="193" HorizontalAlign

我正在尝试使用XAML和C#实现一个接口。我创建了一个带有堆栈面板的XAML,在这个堆栈面板中我有一个最小和最大宽度的文本框,下面有一行。我想根据文本框的长度更改行的长度,以便在我正在编写的文本框中添加下划线(文本框随着插入的文本而增加其宽度),但是当我这样做时

<StackPanel Canvas.Left="410" Canvas.Top="111">
        <TextBox MinWidth="30" MaxWidth="193" HorizontalAlignment="Left" TextWrapping="NoWrap" BorderThickness="0" Background="#3C4149" FontSize="32" Foreground="White" Name="tb"/>
        <Line X1="0" X2="{Binding tb.Width, UpdateSourceTrigger=PropertyChanged}" StrokeThickness="4" Stroke="White" Fill="White" Height="10" HorizontalAlignment="Left"/>
</StackPanel>


X2的值不变,因此该行保持没有任何长度。如何解决此问题?

您可以使用边框控件而不是线条,并使用其名称指定文本框的实际宽度:

<Border HorizontalAlignment="Left" BorderThickness="1" BorderBrush="Red" Width="{Binding ElementName=tb, Path=ActualWidth}"/>

我更喜欢使用line,但我解决了将X1绑定到零,将X2绑定到文本框的实际宽度的问题,因此感谢您的解决方案