c# - 字符串结果到多行文本框

标签 c# .net windows .net-3.5

我一直试图在我的 TextBox 中获得多个结果,但我无法获得正确的结果。有人可以给我一个将此数组显示到文本框中的示例吗?

public ArrayList GetUserGroups(string sUserName)
{
    textBox1.Multiline = true;
    ArrayList myItems = new ArrayList();
    UserPrincipal oUserPrincipal = GetUser(sUserName);

    PrincipalSearchResult<Principal> oPrincipalSearchResult = oUserPrincipal.GetGroups();
    textBox1.Multiline = true;
    foreach (Principal oResult in oPrincipalSearchResult)
    {
        myItems.Add(oResult.Name);
        textBox1.Text = oResult.Name.ToString();
    }
    return myItems;
}

最佳答案

这一行

textBox1.Text = oResult.Name.ToString();

每次执行时覆盖文本框中的文本。您真正想要做的是将每个新字符串附加到文本框中已有的文本:

textBox1.Text += oResult.Name.ToString() + Environment.NewLine;

此外,如果找到的主体数量相对较多,使用 StringBuilder 可能会给您带来更好的性能:

StringBuilder text = new StringBuilder();
foreach (Principal oResult in oPrincipalSearchResult)
{
    myItems.Add(oResult.Name);
    text.Append(oResult.Name);
    text.AppendLine();
}

textBox1.Text = text.ToString();

关于c# - 字符串结果到多行文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17748595/

相关文章:

c# - 在 C# 的同一行上使用流编写器写入数字

c# - 流行网站帖子的流行度衰减算法

.net - DataSet 与其他 .Net Collection 类的内存成本是多少?

c# - WCF 服务,垂直记录

c++ - 将后备缓冲区直接复制到显存

c++ - 圈子用户头像问题

c# - 违反 ASP.NET Core 中授权属性的默认行为是什么

c# - 如何正确退出 C# 应用程序?

c# - 变量 'variable_name' 未声明或从未分配

c# - 如何从 MSI 安装程序中删除数字签名?