У меня есть несколько TextBoxes
с в моем коде Labels
, которые реализуются с помощью следующей XAML:Создание элемента пользовательского интерфейса в WPF
<DockPanel HorizontalAlignment="Right">
<TextBlock Foreground="Black" Padding="0,0,10,0">Serial Number:</TextBlock>
<TextBox Width="150" IsReadOnly="True" BorderBrush="Gainsboro" Height="20"></TextBox>
</DockPanel>
я могу уменьшить некоторые из скопированного кода, делая что-то вроде:
<DockPanel HorizontalAlignment="Right">
<TextBlock Style="{StaticResource CstmTextBoxLbl}">Serial Number:</TextBlock>
<TextBox Style="{StaticResource CstmTextBox}"></TextBox>
</DockPanel>
но все еще несколько длительный. Можно ли сделать что-то вроде:
<controls:CstmTextBox Style="{StaticResource CstmTextBox}" LabelText="Serial Number:" Text=""/>
Если CstmTextBox
будет осуществлять все, что XAML требуется, чтобы получить тот же визуальный эффект один раз, и я мог бы получить доступ как TextBlock
текста и TextBox
текста в коде. Такие как
CstmTextBox textbox;
textbox.LabelText = "Serial Number:";
String some_text = textbox.Text;
textbox.Text = "....";
Создайте UserControl. – Clemens