我的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;
答案 0 :(得分:1)
您可以检索级别的值,然后使用此值作为最大值创建数值数组:
var levels = Enumerable.Range(1, levels)
然后,您可以将此值绑定到DropDownlist控件等。
control.Source = levels;
control.Bind()
要显示该级别的商店列表,您可以使用DropDownList的autopostback功能,并根据控件的SelectedValue属性检索商店。