【问题标题】:Handling a very large list of options for a user为用户处理非常大的选项列表
【发布时间】:2014-06-22 20:18:14
【问题描述】:

我有一个允许用户选择位置的应用程序。

目前我有 5 个位置可供选择,但我想扩展它以使用包含大约 100 个选项的主列表。

我还需要保存用户的偏好。

目前,我的工作代码如下:

保存设置:

    My.Settings.SettingSearchLocationCAL = CInt(settingsRADlocationCAL.Checked)
    My.Settings.SettingSearchLocationMIS = CInt(settingsRADlocationMIS.Checked)
    My.Settings.SettingSearchLocationMON = CInt(settingsRADlocationMON.Checked)
    My.Settings.SettingSearchLocationLON = CInt(settingsRADlocationLON.Checked)
    My.Settings.SettingSearchLocationOTT = CInt(settingsRADlocationOTT.Checked)
    My.Settings.SettingSearchLocationTOR = CInt(settingsRADlocationTOR.Checked)

确定选择了哪个位置:

    If settingsRADlocationTOR.Checked = True Then
        LocationName = "ontario"
        LocationID = "1700272"
    ElseIf settingsRADlocationOTT.Checked = True Then
        LocationName = "ottawa"
        LocationID = "1700185"
    ElseIf settingsRADlocationMIS.Checked = True Then
        LocationName = "ontario"
        LocationID = "1700276"
    ElseIf settingsRADlocationLON.Checked = True Then
        LocationName = "london"
        LocationID = "1700214"
    ElseIf settingsRADlocationMON.Checked = True Then
        LocationName = "montreal"
        LocationID = "80002"
    ElseIf settingsRADlocationCAL.Checked = True Then
        LocationName = "calgary"
        LocationID = "1700199"
    End If

目前,我为此使用单选按钮,但我试图弄清楚我应该如何允许用户选择他们的位置。我一直在尝试使用文件菜单,用于可扩展菜单功能(树结构),现在似乎可以正常工作。

我的问题如下:

我应该使用更好的容器吗? (用户将选择一个国家、省/州和城市。理想情况下,我希望这一切都在一个控制中,因此是文件菜单)

有没有一种方法可以将带有菜单结构的 txt 文件导入到文件菜单(或其他容器)中,而不是手动填写每个条目?

还有。

如何确定在超过 100 个条目的列表中选择了哪个选项?我需要继续为每个条目设置一个 .setting 吗?还是有更好的方法可以解决这个问题?

感谢您提供的任何帮助。我希望我的解释是有道理的。

谢谢!

【问题讨论】:

  • 带有文本框的列表框怎么样?用户可以从中过滤?
  • 如果他们只能选择一个位置,我会使用组合框
  • 我一直在研究 ComboBoxes,我发现了这个:brad-smith.info/blog/projects/dropdown-controls 虽然我不太确定我喜欢它的外观和感觉。似乎有点拥挤。
  • 您可以将对象存储在标准 CBO 中,以便它显示您想要的任何文本,例如包含您需要的 ID 的位置,因此您只需获取 .SelectedItem.ID。 CBO 肯定会减少代码和屏幕空间 - 您上一次在表单上看到超过 2 或 3 个单选按钮是什么时候(更不用说 100 个?)。
  • 这就是我寻找替代方案的原因。我不是 CBO 的主要粉丝,名单会相当广泛。我喜欢文件菜单的分支方式。可惜我不能对 CBO 做同样的事情:(

标签: vb.net drop-down-menu saving-data large-data


【解决方案1】:

为了记录,我决定使用文件菜单,ComboBox 根本不符合我的需要。是的,编写代码需要大量时间,但我对结果更满意。

P.S 感谢大家投反对票。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-13
    • 2011-08-09
    • 1970-01-01
    • 2012-07-03
    • 1970-01-01
    • 1970-01-01
    • 2020-05-02
    相关资源
    最近更新 更多