【问题标题】:Opening directories of PCs on a network using a string as a path使用字符串作为路径打开网络上的 PC 目录
【发布时间】:2012-09-28 19:36:06
【问题描述】:

我的 Windows 应用程序只是让用户(部门老板)选择他们想要导航到我们网络上的哪个 PC 目录。每个计算机名称都有一个相应的 ID 标签。例如,如果我想打开会计的 C 盘,我会在标记为 selectPC 的组合框中选择“会计的 PC”。然后我根据他们的选择设置 ID 标签(例如,让我们说它的“ipx-12345”)并在文本框中显示 ID 标签(用于视觉验证)。我想在我的 Windows 资源管理器中调用路径“\\ipx-12345\c$\。请注意,路径将根据他们在组合框中选择的 PC 而改变)我将如何使用 ID 标签中的文本框?

  //snippet of condition that sets the textbox's value to the ID tag of the PC chosen
  // in combo box named 'selectPC'

  if (selectPC.Text == ("Account's PC"))
            pcID.Text = "IPX-12345";

【问题讨论】:

    标签: c# networking path directory


    【解决方案1】:

    您是如何填充此组合框的? 如果数据来自数据库(DataSet、BindingSource 等),您可以使用组合框的 DataSource、DisplayMember 和 ValueMember。如果你没有使用数据库,并且依赖于数据列表可以实现这样的事情:

    Dictionary<string, string> Data = new Dictionary<string,string>();
    Data.Add("Acount1", @"\\ics#$1\");
    Data.Add("Acount2", @"\\ics#$2\");
    Data.Add("Acount3", @"\\ics#$3\");
    Data.Add("Acount4", @"\\ics#$4\");
    
    comboBox1.DataSource = new BindingSource(Data, null);
    comboBox1.DisplayMember = "Key";
    comboBox1.ValueMember = "Value";
    

    所以,要自动选择Combobox中的item,可以根据combobox SelectedValue属性中的ID得到结果。

    combobox1.SelectedValue
    

    【讨论】:

    • 用户在组合框的下拉部分选择他们想要的PC。盒子的数据不是来自任何地方。在 if 语句中,ID 是根据他们选择的组合框中的字符串设置的。然后显示在文本框中。我想知道如何在文本框中提取该字符串。当他们按下 OK 按钮时,程序将打开 Windows 资源管理器并转到 \\ipx-12345\c$\
    • ok ...正如您所说,您通过设计器在组合框中包含了诸如 ComboboxItens 选项之类的项目。如果您需要添加新表单,我相信您将这个概念词典与他一起应用将是一个相当大的改进,只需包含词典即可。除了更高效之外,您的代码看起来也会更优雅。只需在表单加载事件中包含组合框的创建,当用户单击确定按钮时,您定义“TextBox.Text = combobox1.SelectedValue。'我希望我有所帮助。
    猜你喜欢
    • 1970-01-01
    • 2011-09-13
    • 1970-01-01
    • 2019-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-14
    相关资源
    最近更新 更多