如何在datagridview中显示数据库表(我的数据库是sdf)? 这是我的代码:
private void Show_Button_Click(object sender, EventArgs e)
{
string query = "SELECT * FROM Contact_List";
SqlCeConnection con = new SqlCeConnection(@"Data Source=C:\Co-op\Contact\Contact\ContactDataBase.sdf;Password=********");
using (SqlCeDataAdapter adap = new SqlCeDataAdapter(query, con))
{
DataTable dat = new DataTable();
adap.Fill(dat);
dataGridView1.DataSource = dat;
}
}
上面的代码没有向datagridview显示任何数据。它只显示一个没有任何内容的新行。我正在使用Window Forms应用程序。 这是我得到的错误:
'System.Windows.Forms.DataGridView'不包含的定义 'DataBind'并没有扩展方法'DataBind'接受第一个 可以找到类型为“System.Windows.Forms.DataGridView”的参数 (您是否缺少using指令或程序集引用?)
答案 0 :(得分:0)
一个建议请尝试使用断点在调试模式下可视化DataTable。
确保数据在DataTable中可用
试试这个示例代码:
<%@ Page Language="C#" %>
<script runat="server">
void Page_Load()
{
String str = "";
int m, s;
m = 5;
s = 2;
label1.Text = str;
m = 5;
s = 2;
str += "m+s" + (m+s) + "<br/>";
label2.Text = str;
m = 5;
s = 2;
str += "m-s" + (m-s) + "<br/>";
label3.Text = str;
m = 5;
s = 2;
str += "m*s" + (m*s) + "<br/>";
label4.Text = str;
}
</script>
<!Doctype html>
<html>
<body>
<%--
Heading
Student: Schweidel Tyson;
'File name: ex02.aspx
--%>
m = <%=DateTime.Now.Minute%><br>
s = <%=DateTime.Now.Second%>
<asp:Label id="Label1" runat="server"/></asp:Label>
m+s = <%=str%>
<asp:Label id="Label2" runat="server"/></asp:Label>
m-s = <%=str%>
<asp:Label id="Label3" runat="server"/></asp:Label>
m*s = <%=str%>
<asp:Label id="Label4" runat="server"/></asp:Label>
</body>
</html>
用法:
public void FillDataTable(string sSQL, DataTable dt)// DataTable operations
{
this.cmd = new SqlCommand(sSQL, this.conn);
this.dataAdapter = new SqlDataAdapter(this.cmd);
this.dataAdapter.Fill(dt);
}
希望它必须有效。