DataGridView играет упрямо.Это просто не будет связывать - PullRequest
1 голос
/ 12 января 2011

У меня одно упрямое представление сетки данных отказывается отображать связанные данные.я поместил вид сетки с именем exititgridview и установил для его источника данных значение none.Затем я добавил автономный источник данных, который может возвращать столбцы в сетку, но сначала данные, отображаемые в сетке, будут основаны на том, что выбирается из выпадающего списка.проверить это на картинке ниже.alt text

Таким образом, в основном, какой-то элемент выбирается из выпадающего списка рядом с меткой caseid, и сетка отображает значения соответственно ... Как таковой, мне нужен метод selectedIndex грандиозный, поэтому у меня это было на моей странице1004 *

protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        CreateDataSet();

            caseID = DropDownList1.SelectedItem.Value.Trim();

        DataView exhibitDataView = new DataView(exhibitDataSet.Tables[0]);
        exhibitDataView.RowFilter = "FilingID = '" + caseID + "' ";
        ExhibitGridView.DataSource = exhibitDataView;
        ExhibitGridView.DataBind();
    }
    private void CreateDataSet()
    {
        exhibitConnection.ConnectionString =
        ExhibitListSqlDataSource.ConnectionString;
        exhibitSqlDataAdapter.SelectCommand = new
        SqlCommand(ExhibitListSqlDataSource.SelectCommand, exhibitConnection);
        exhibitSqlDataAdapter.Fill(exhibitDataSet);
    }

Код работает нормально ... Я вставил точку останова, чтобы убедиться, что некоторые данные действительно возвращаются для привязки, и есть ... Вы можете увидеть это на снимке экрана ниже: alt text

это было до (ExhibitGridView.DataBind ()).Поэтому, когда я запускаю следующий блок, я ожидаю, что данные будут связываться и отображаться в браузере, но по какой-то неизвестной причине gridview ведет себя упрямо.я попытался указать источник данных напрямую, и он успешно отображается при загрузке страницы, но в противном случае он не отвечает.

В чем может быть причина?

Ответы [ 2 ]

0 голосов
/ 21 января 2011

Я полагаю, что вам нужно предоставить свой DataAdapter параметры, с которыми вы предоставляете оператор select.Посмотрите.

Я привел вам пример из моего кода, который использует OleDB (я удалил все соединения открытия / закрытия для простоты чтения).Они очень похожи.

SqlCmd = "select * from App_Details WHERE App_Name LIKE @Var";

aCommand = new OleDbCommand(SqlCmd, aConnection);
aCommand.Parameters.AddWithValue("@Var", value);

OleDbDataAdapter dataAdapter = new OleDbDataAdapter(SqlCmd, aConnection);
OleDbCommandBuilder cmdBuilder = new OleDbCommandBuilder(dataAdapter);

// Now I do not see this part in your code right before you bind your data
dataAdapter.SelectCommand.Parameters.AddWithValue("@Var", value);
DataTable table = new DataTable();
dataAdapter.Fill(table);
dgvSearchApp.DataSource = table;
0 голосов
/ 12 января 2011

Убедитесь в событиях Post Back. Может быть, страница делает две публикации обратно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...