为了账号安全,请及时绑定邮箱和手机立即绑定

C# XAML 绑定

C# XAML 绑定

C#
天涯尽头无女友 2022-06-12 15:19:43
我正在尝试使用 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 的值没有改变,所以这条线没有任何长度。我该如何解决这个问题?
查看完整描述

1 回答

?
GCT1015

TA贡献1827条经验 获得超4个赞

您可以使用边框控件而不是线条,并使用其名称分配 TextBox 的实际宽度:

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



查看完整回答
反对 回复 2022-06-12
  • 1 回答
  • 0 关注
  • 129 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信