在 C# 中从下拉列表中选择最短的项目字符串 Asp.net

Selecting the shortest item string from dropdownlist in C# Asp.net

我有多个与数据库绑定的动态生成的下拉列表。我希望在每个下拉列表中的索引 0 处显示最短的字符串值。

示例代码为:

DropDownList ddlTemplate = new DropDownList();
ddlTemplate.ID = "ddlTemplate|" + j.ToString();
ddlTemplate.AppendDataBoundItems = true;
ddlTemplate.DataTextField = "TemplateName";
ddlTemplate.DataValueField = "TemplateName";
ddlTemplate.Width = Unit.Pixel(200);
ddlTemplate.AutoPostBack = true;
ddlTemplate.DataSource = null;
ddlTemplate.DataSource = dsMultipleTemplate.Tables[j].DefaultView;
ddlTemplate.DataBind();

如果可以通过数据库查询实现,请指导。

谢谢

当你没有回复评论时,也许你正在寻找类似的东西:

    List<int> stringLength = new List<int> { }; // storing every length

    foreach (string entry in ddlTemplate.Items)
    {
        stringLength.Add(entry.Length); // saving each string-length
    }

    int index = stringLength.FindIndex(a => a == stringLength.Min()); // get index of lowst length
    ddlTemplate.SelectedIndex = index; // set selected value to index from above

这样,您的项目不会位于索引 0,但会被选中。将它放在索引 0 是非常基本的。我想你可以自己做。