组合框或列表框

本文关键字:列表 组合 | 更新日期: 2023-09-27 18:02:57

我很好奇我是否应该使用列表框或组合框来查找仓库部件号,然后在单击它时触发事件。我希望能够点击那个数字,然后发送一个特定的命令出串行端口。我目前使用的超链接的选择来做到这一点,但现在有很多和下拉列表将有助于从中选择和触发相同的命令,如果它是超链接。

这是我的代码,当一个超链接点击部分HC1_101…我可以用列表框替换它来发送相同的命令吗?我能把链接加到下拉列表吗?

private void linkLabel_HC1_101_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
    if (serialPort1.IsOpen)
    {
        var content = new List<byte>();
        content.Add(2);
        content.AddRange(Encoding.ASCII.GetBytes("01P00101##"));
        content.Add(3);
        byte[] buffer = content.ToArray();
        serialPort1.Write(buffer, 0, buffer.Length);
    }
}

组合框或列表框

许多开发人员通常会使用下拉列表控件。列表中的每个项目都有一个Text属性(用户在屏幕上看到的)和一个Value属性(仅由您的代码看到)。下面是一个示例:

<asp:DropDownList ID="MyDropDownList" runat="server" OnSelectedIndexChanged="MyDropDownList1_SelectedIndexChanged">
   <asp:ListItem Value="1">Item One</asp:ListItem>
   <asp:ListItem Value="2">Item Two</asp:ListItem>
   <asp:ListItem Value="3">Item Three</asp:ListItem>
</asp:DropDownList>

ListItems中的文本和值可以由您的代码或从数据源构造。在你的服务器代码中你有这样的代码来处理用户从列表中进行选择:

    protected void MyDropDownList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        string value;
        value = MyDropDownList.SelectedValue;
        // TBD: Construct content from the value, and send it to your serial port.
    }

这有帮助吗?