c# - 将结果输入多行文本框

原文 标签 c# .net windows .net-3.5

我一直试图在我的文本框中得到多个结果,但我无法得到正确的结果。有人能给我一个在文本框中显示这个数组的例子吗?

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/

相关文章:

javascript - 如何从asp.net中的js函数调用c#函数?

.net - log4net.Config.BasicConfigurator.Configure() 和 log4net.Config.XmlConfigurator.Configure() 之间有区别吗?

.net - 如何在 Windows 环境中检查 .txt 文件是 ASCII 还是 UTF-8 格式?

用于从桌面访问 iOS 应用程序的文档目录的 Windows API?

c# - Registry Watcher C#实现RegistryKeyChangeEvent

c# - 如何模拟 DirectoryInfo 类?

c++ - 如何解决此VC++ 6.0链接器错误?

windows - 如何创建虚拟游戏 handle ?

c# - Blazor 将多选绑定(bind)到一个值

.net - 在 DataTemplate 中设置控件属性无法按预期工作