我正在一个简单的程序中使用一些按钮,一个文本框和一些组合框。
我想做的是当我再次单击按钮时,结果必须再次出现在文本框中,而不删除以前的结果,例如在组合框1中我选择宝马,在组合框2中我选择德国后我点击按钮文本显示在文本框中,我想再次选择其他项目,但上一项(宝马和德国)应保留在文本框中。我不知道我是否可以解释自己。
<StackPanel>
<ComboBox Name="cb1" Margin="0,10,0,0" Width="100">
<ComboBoxItem Content="Peugeot"/>
<ComboBoxItem Content="BMW"/>
<ComboBoxItem Content="GOLF"/>
</ComboBox>
<ComboBox Name="cb2" Margin="0,10,0,0">
<ComboBoxItem Content="Usa"/>
<ComboBoxItem Content="Germany"/>
<ComboBoxItem Content="France"/>
</ComboBox>
<TextBox Name="txt1" Margin="0,10,0,0" Width="200" Height="100"/>
<Button Name="btnclick" Margin="0,10,0,0" Width="50" Height="30" Content="Click" Click="btnclick_Click" />
public MainWindow()
{
InitializeComponent();
}
private void btnclcik_Click(object sender, RoutedEventArgs e)
{
if (cb1.IsArrangeValid == true)
if (cb2.IsArrangeValid == true)
txt1.Text = "Car:" + cb1.Text + "\n" + "state:" + cb2.Text;
}
private void btndel_Click(object sender, RoutedEventArgs e)
{
cb1.Text = "";
cb2.Text = "";
}
} }
答案 0 :(得分:1)
你需要附加到文本而不是再次设置...
改变这个..
private void btnclick_Click(object sender, RoutedEventArgs e)
{
if (cb1.IsArrangeValid == true)
if (cb2.IsArrangeValid == true)
txt1.Text = (txt1.Text + "\n" + "Car:" + cb1.Text + "\n" + "state:" + cb2.Text).Trim();
}
并且wpf中没有回发。请仔细阅读,不仅仅是分配它将成为你的学习