快速访问用户控件的元素
本文关键字:元素 控件 用户 访问 | 更新日期: 2023-09-27 18:27:01
我有这样的用户控制(例如):
<UserControl
x:Class="Tester.UC"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:Tester"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
d:DesignHeight="300"
d:DesignWidth="400">
<Grid>
<TextBlock Name="Name" HorizontalAlignment="Left" Margin="10,10,0,0" TextWrapping="Wrap" Text="TextBlock" VerticalAlignment="Top" Height="79" Width="380" FontSize="50" TextAlignment="Center"/>
<Button Content="Button" HorizontalAlignment="Left" Margin="152,179,0,0" VerticalAlignment="Top"/>
<TextBox Name="LastName" HorizontalAlignment="Left" Margin="0,109,0,0" TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Top" Width="390" Height="65" TextAlignment="Center" FontSize="40"/>
</Grid>
要访问此控件,我必须使用"名称",然后使用"属性"。像这样的东西。
UC uc = new UC();
uc.LastName.Text = "text";
有什么方法可以更快地访问它吗?我的意思是。。。
uc.LastName="Text"
您可以在代码后面声明一个属性来包装LastName.Text
。例如
public string LastNameText
{
get { return LastName.Text; }
set { LastName.Text = value; }
}
<TextBox Name="LastName" x:FieldModifier="private"/>
值得吗?我非常怀疑。
不是。LastName是一个TextBox类型的对象,"Text"是一个字符串。不能将字符串分配给TextBox。文本也是字符串类型,这就是为什么你可以给它分配"文本"。强类型对象是C#的一个非常标准的原则。
理论上,您可以重载"="运算符,但不建议这样做,因为这会使其他人难以理解您的代码。