我需要获取IP地址,子网掩码,网关,DNS并检查是否从给定的适配器启用了DHCP。 我有这个代码加载我的以太网和无线适配器:
public void LoadAdapters()
{
if (cmb1_adaptadores.Items.Count < 1)
{
NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface adapter in adapters)
{
var ipProps = adapter.GetIPProperties();
IPInterfaceProperties properties = adapter.GetIPProperties();
if (adapter.NetworkInterfaceType == NetworkInterfaceType.Wireless80211 || adapter.NetworkInterfaceType == NetworkInterfaceType.Ethernet)
{
cmb1_adaptadores.Items.Add(adapter.Description);
}
}
}
cmb1_adaptadores.SelectedIndex = 0;
}
我找到了许多使用foreach和循环的示例代码来获取每个适配器ip,dns等。 我需要一个更容易的事情,但我不知道如何处理它。
使用我的组合框中的适配器描述,我想用适配器信息填充一些标签,我的意思是:
If (adapter.description == cmb1_adaptadores.SelectedItem)
{
labelIP1 = adapter...
labelGATEWAY1 = adapter...
}
当然它会比简单的if更复杂,但是这样每次选择一个新项目时,这个方法都会使用在组合框中选择的描述运行来引用适配器。