我需要在运行时在GridControl / DataGridView中显示数据。为此,我在表单上使用了devexpress DashboardDesigner控件,并将其可见性设置为false。然后单击按钮,我调用了DashoardDesigner.ShowDataSourceWizard()以运行数据连接向导。向导完成后,我需要在GridControl / DataGridView上显示查询的输出。为此,我写
private void button1_Click(object sender, EventArgs e)
{
dashboardDesigner1.ShowDataSourceWizard();
SqlDataSource objSqlDataSource = (DevExpress.DataAccess.Sql.SqlDataSource)dashboardDesigner1.SelectedDataSource;
dataGridView1.DataSource = objSqlDataSource;
dataGridView1.DataMember = objSqlDataSource.Queries[0].Name;
objSqlDataSource.Fill();
dataGridView1.Refresh();
}
代码已成功构建,但输出未显示在网格中。
答案 0 :(得分:0)
由Dashboard Designer控件创建的DashboardSqlDataSource组件只能在仪表板中使用,而不能在其他控件中使用。
要在没有仪表板的情况下引入所需的功能,请使用SqlDataSource组件和SqlDataSourceUIHelper类。 SqlDataSourceUIHelper提供了一个API来调用最终用户可用的各种工具,用于在应用程序中配置数据连接设置。
SqlDataSource objSqlDataSource = new SqlDataSource();
if(SqlDataSourceUIHelper.ConfigureConnection(objSqlDataSource))
{
if(SqlDataSourceUIHelper.ManageQueries(objSqlDataSource))
{
dataGridView1.DataSource = objSqlDataSource;
dataGridView1.DataMember = objSqlDataSource.Queries[0].Name;
objSqlDataSource.Fill();
dataGridView1.Refresh();
}
}