Как установить DataSource DataGridView внутри панели инструментов? (Формы окна C #)

StackOverflow https://stackoverflow.com/questions/3473795

Вопрос

У меня есть DataGridView внутри контроля ContextMenu, см. Фрагмент кода ниже:

private void Form1_Load(object sender, EventArgs e)
        {
            SetDataSource(dataSet1);// A populated DataSet
        }

protected void SetDataSource(DataSet ds)
        {
            dataGridView1.DataSource = ds;
            ToolStripControlHost tsHost = new ToolStripControlHost(dataGridView1);
            contextMenuStrip1.Items.Clear();
            contextMenuStrip1.Items.Add(tsHost);
            contextMenuStrip1.Show(textBox1, 0, 27);
        }

 private void button1_Click(object sender, EventArgs e)
        {
            SetDataSource(dataSet2);// Another populated DataSet
        }

Что происходит вот когда в форме открывается, он показывает контекстмен и отображает DataGridView на нем со значением DataSet1. Но когда я нажимаю кнопку, чтобы изменить источник данных сетки, он не показывает записи DataSet2. Пожалуйста, помогите мне, как это исправить ... Спасибо ...

Это было полезно?

Решение 2

Ответил уже здесь.

Другие советы

Вы можете попробовать настроить DGV DataSource на объект Bindingsource, а затем вместо этого модифицируя данные данных Bindingsource. Вы можете заставить Bindingsource обновлять, если он не будет автоматически, вызывая свой валютаManager.refresh ().

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top