如果其中一个在模板内,如何同时写入 2 个文本框
How write in 2 textboxes simultaneously if one of them is within template
我在现场寻找答案,但没有找到。我有一个 Windows 模板,在模板中有一个文本框。
<TextBox x:Name="WindowTextbox" Text="Type..." TextChanged="WindowTextbox_TextChanged"
FontSize="15" Foreground="White" TextWrapping="Wrap" VerticalScrollBarVisibility="Auto"
AcceptsReturn="True" Background="#404040" BorderThickness="0" Grid.Row="0" Grid.Column="0"
Grid.ColumnSpan="3" Grid.RowSpan="3" Margin="0 0 0 23">
</TextBox>
另外,当我按下动态创建文本框的按钮时,我创建了另一个文本框。
void Button_Click_1(object sender, RoutedEventArgs e)
{
var window = new Window();
window.Show();
window.Width = 250;
window.Height = 250;
window.Template = FindResource("WindowControlTemplate1") as ControlTemplate;
TextBox dynamicTextBox = new TextBox();
Grid.SetRow(dynamicTextBox, 1);
Grid.SetColumn(dynamicTextBox, 0);
this.TextPanel.Children.Add(dynamicTextBox);
}
所以我想做的是当我同时在模板内的文本框中写一些东西时,这段文本应该出现在动态创建的文本框中
如果我没理解错的话
而不是这个
TextBox dynamicTextBox = new TextBox();
创建私有字段
private TextBox _dynamicTextBox;
void Button_Click_1(object sender, RoutedEventArgs e)
{
...
...
_dynamicTextBox = new TextBox();
Grid.SetRow(dynamicTextBox, 1);
Grid.SetColumn(dynamicTextBox, 0);
this.TextPanel.Children.Add(_dynamicTextBox);
}
在 WindowTextbox
的 TextChanged
事件中,将文本设置为 _dynamicTextBox
。
private void WindowTextbox_TextChanged(object sender, TextChangedEventArgs e)
{
if(sender is TextBox txt)
{
_dynamicTextBox.Text = txt.Text;
}
}
我在现场寻找答案,但没有找到。我有一个 Windows 模板,在模板中有一个文本框。
<TextBox x:Name="WindowTextbox" Text="Type..." TextChanged="WindowTextbox_TextChanged"
FontSize="15" Foreground="White" TextWrapping="Wrap" VerticalScrollBarVisibility="Auto"
AcceptsReturn="True" Background="#404040" BorderThickness="0" Grid.Row="0" Grid.Column="0"
Grid.ColumnSpan="3" Grid.RowSpan="3" Margin="0 0 0 23">
</TextBox>
另外,当我按下动态创建文本框的按钮时,我创建了另一个文本框。
void Button_Click_1(object sender, RoutedEventArgs e)
{
var window = new Window();
window.Show();
window.Width = 250;
window.Height = 250;
window.Template = FindResource("WindowControlTemplate1") as ControlTemplate;
TextBox dynamicTextBox = new TextBox();
Grid.SetRow(dynamicTextBox, 1);
Grid.SetColumn(dynamicTextBox, 0);
this.TextPanel.Children.Add(dynamicTextBox);
}
所以我想做的是当我同时在模板内的文本框中写一些东西时,这段文本应该出现在动态创建的文本框中
如果我没理解错的话
而不是这个
TextBox dynamicTextBox = new TextBox();
创建私有字段
private TextBox _dynamicTextBox;
void Button_Click_1(object sender, RoutedEventArgs e)
{
...
...
_dynamicTextBox = new TextBox();
Grid.SetRow(dynamicTextBox, 1);
Grid.SetColumn(dynamicTextBox, 0);
this.TextPanel.Children.Add(_dynamicTextBox);
}
在 WindowTextbox
的 TextChanged
事件中,将文本设置为 _dynamicTextBox
。
private void WindowTextbox_TextChanged(object sender, TextChangedEventArgs e)
{
if(sender is TextBox txt)
{
_dynamicTextBox.Text = txt.Text;
}
}