在组合框中将整数转换为数字列表,从 db - C#

本文关键字:列表 db 数字 组合 转换 整数 | 更新日期: 2023-09-27 17:56:25

我的SQL数据库中有一个名为"Shoppings"的表。这个有一个名为qtPisos的列,它描述了一个购物中心有多少层。在我的程序中,我想根据这个整数的数量创建一个组合框,以便用户可以选择购物中心中的级别,然后列出该特定级别的商店。

知道我该怎么做吗?

这是我的代码。

public partial class Shoppings : Form
{
    private DataViewManager dsView;
    private DataSet ds;
    public Shoppings()
    {
        InitializeComponent();
    }
    private void Shoppings_Load(object sender, EventArgs e)
    {
        Login logForm = new Login();
        logForm = logForm.getLoginForm();
        ds = new DataSet("DsShoppings");
        // Fill the Dataset with Shoppings, map Default Tablename "Table" to "Shoppings".
        SqlDataAdapter sda = new SqlDataAdapter("SELECT * FROM Shoppings", logForm.sqlConnection);
        sda.TableMappings.Add("Table", "Shoppings");
        sda.Fill(this.ds);
        // The DataViewManager returned by the DefaultViewManager property
        // allows to create custom settings for each DataTable in the DataSet.
        this.dsView = ds.DefaultViewManager;
        // Combobox Databinding
        ComboShopping.DataSource = this.dsView;
        ComboShopping.DisplayMember = "Shoppings.nomeShopping";
        ComboShopping.ValueMember = "Shoppings.idShopping";
        // Text Columns DataBinding
        txtTotalLojas.DataBindings.Add("Text", dsView, "Shoppings.totalLojas");
        //int qtPisos = Convert.ToInt32(ds.Tables["Shoppings"].Rows[0]["qtPisos"]);
        ComboPisos.DataSource = this.dsView;

在组合框中将整数转换为数字列表,从 db - C#

您可以检索级别的值,然后使用此值作为最大值创建一个数字数组:

var levels = Enumerable.Range(1, levels)

然后,可以将此值绑定到 DropDownlist 控件等。

control.Source = levels;
control.Bind()

然后,若要显示该级别的商店列表,可以使用 DropDownList 的自动回发功能,并根据控件的 SelectedValue 属性检索商店。