You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过PowerShell在WPF TextBox中编程添加新行

解决WPF TextBox点击按钮逐行写入内容的问题

你的核心问题是直接赋值Text属性会覆盖原有内容,两种写法里每次$OutputBox.Text = "xxx"都会把之前的文本全部替换,所以最终只显示最后一行。下面是几种可行的解决方法:

方法1:使用AppendText方法(推荐)

AppendText是WPF TextBox专门用于追加内容的方法,不会覆盖现有文本,配合换行符实现逐行显示:

$button.add_Click({
    # 可选:清空原有内容,如果需要保留之前的文本可以删除这行
    $OutputBox.Clear()
    $OutputBox.AppendText("Complete1`r`n")
    $OutputBox.AppendText("Complete2`r`n")
    $OutputBox.AppendText("Complete3")
})

方法2:使用+=拼接文本属性

通过+=把新内容拼接到原有文本末尾,实现追加效果:

$button.add_Click({
    $OutputBox.Clear()
    $OutputBox.Text += "Complete1`r`n"
    $OutputBox.Text += "Complete2`r`n"
    $OutputBox.Text += "Complete3"
})

注意:这种方式每次都会重新生成整个文本字符串,内容较多时效率不如AppendText,简单场景可以使用。

方法3:一次性赋值多行文本(适合固定内容)

用PowerShell的Here-String直接定义多行内容,一次性赋值给Text属性,无需手动添加换行符:

$button.add_Click({
    $OutputBox.Text = @"
Complete1
Complete2
Complete3
"@
})

你的XAML中已经设置了AcceptsReturn="True",所以换行符可以正常生效,不需要额外配置其他属性。

内容的提问来源于stack exchange,提问作者MWH

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 21:27:11