Преобразовать целое число в числовой список в выпадающем списке из db - C # - PullRequest
1 голос
/ 16 мая 2011

У меня есть таблица «Shoppings» в моей базе данных SQL.У этого есть столбец с именем 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;

1 Ответ

1 голос
/ 16 мая 2011

Вы можете получить значение уровней, а затем создать числовой массив, используя это значение в качестве максимального значения:

var levels = Enumerable.Range(1, levels)

Затем вы можете привязать это значение к элементу управления DropDownlist или тому подобное.

control.Source = levels;
control.Bind()

Чтобы затем отобразить список магазинов для этого уровня, вы можете использовать функцию автоответчика DropDownList и получать ваши магазины на основе свойства SelectedValue элемента управления.

...