繁体   English   中英

将console.writeline转换为RichTextBox.AppendText()C#

[英]Convert console.writeline to RichTextBox.AppendText() c#

我有一些代码可以从多个访问点读取ssid和rssi。 但是,它是一个控制台应用程序,我需要将其转换为winform应用程序。

WlanClient client = new WlanClient();
        foreach (WlanClient.WlanInterface wlanIface in client.Interfaces)
        {
            Wlan.WlanAvailableNetwork[] networks = wlanIface.GetAvailableNetworkList(0);
            foreach (Wlan.WlanAvailableNetwork network in networks)
            {
                Console.WriteLine("Found network with SSID {0} and Siqnal Quality {1}.", GetStringForSSID(network.dot11Ssid), network.wlanSignalQuality);
            }

我希望将在控制台中打印列表的行转换为将打印到富文本框的一行。 我尝试过的所有事情都导致只打印列表中的一项。

谢谢

编辑感谢您的答复,这就是我的目的。

richTextBox1.AppendText("Found network with SSID---" + GetStringForSSID(network.dot11Ssid) + "and Siqnal Quality---" + rssi + "\n")

您必须确保RichTextBox上的Multiline属性为true(这是默认设置,应该如此)。 使用RichTextBox.AppendText()方法,并确保在字符串末尾添加换行符。

我在这里假设您正在建立一个网络列表,对于多个字符串追加,我建议使用StringBuilder MSDN Link

这样的事情应该起作用:

StringBuilder builder = new StringBuilder();
foreach(Wlan.WlanAvailableNetwork Network network in networks)
{
    string ssidString = GetStringForSSID(network.dot11Ssid);
    builder.AppendFormat("Found network with SSID {0} and Signal Quality {1}.", ssidString , network.wlanSignalQuality).AppendLine();
}
textBox.Text = builder.ToString();
    TextBox.Lines= networks.Select(n => string.Format("Found network with SSID {0} and Signal Quality {1}.", n.dot11Ssid, n.wlanSignalQuality)).ToArray();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM