gpt4 book ai didi

c# - 从分隔的数据库字符串字段中选择多选列表框中的项目

转载 作者:搜寻专家 更新时间:2023-10-30 20:01:05 25 4
gpt4 key购买 nike

我正在尝试为可以编辑并保存回数据库的数据库记录构建一个“编辑”页面。其中一个字段将是一个多选列表框,加载时需要在硬编码列表中突出显示适当的列表项。

使用 C#,如何根据数据库字段中以逗号分隔的字符串填充多选列表框(选择适当的项目)?我研究了一些涉及循环的解决方案,但我一直无法让它们与我有限的 C# 技能集一起工作。

这就是我现在所拥有的,在我被卡住之前。您会看到它不考虑字符串中的多个值。是否有像“包含”这样的函数,我可以检查该值是否匹配?我仍然缺少一些(可能是基本的)C# 逻辑和编码。

int i;
for (i = 0; i <= CATEGORYListBox.Items.Count - 1; i++)
{
if (reader["CATEGORY"].ToString() == CATEGORYListBox.Items(i).Value)
{
CATEGORYListBox.Items(i).Selected = True;
}
}

...

<asp:ListBox ID="CATEGORYListBox" runat="server">
<asp:ListItem Value="Circulation">Circulation</asp:ListItem>
<asp:ListItem Value="Interactive Media">Interactive Media</asp:ListItem>
<asp:ListItem Value="Classified">Classified</asp:ListItem>
<asp:ListItem Value="Publishing">Publishing</asp:ListItem>
<asp:ListItem Value="Editorial">Editorial</asp:ListItem>
<asp:ListItem Value="Retail">Retail</asp:ListItem>
</asp:ListBox>

谢谢大家

最佳答案

我会按照这些思路提出一些建议。它似乎比嵌套循环更具可读性。

    List<string> categories = new List<string>(reader["CATEGORY"].ToString().Split(','));
foreach (ListItem item in CATEGORYListBox.Items)
{
if (categories.Contains(item.Value))
item.Selected = true;
}

关于c# - 从分隔的数据库字符串字段中选择多选列表框中的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/532285/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com