我有一个SQL Server Compact Edition数据库文件,我希望将其上的所有表作为节点显示在我的Windows应用程序中的TreeView控件中。
不幸的是,我不知道该怎么做。
这就是我现在所拥有的:
private void PopulateTreeView()
{
SqlCeCommand cmd = new SqlCeCommand();
try
{
using (SqlCeConnection conn = new SqlCeConnection("Data Source=" + connString))
{
cmd.CommandType = CommandType.Text;
cmd.CommandText = "SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES";
conn.Open();
cmd.Connection = conn;
cmd.ExecuteNonQuery();
// Don't know what's next...
}
}
catch (Exception x)
{
MessageBox.Show(x.GetBaseException().ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
cmd.Dispose();
}
}
答案 0 :(得分:3)
类似
var tv = new TreeView();
using(var conn = new SqlCeConnection("Data Source=" + connString))
using(var cmd = new SqlCeCommand(conn,"SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES"))
{
conn.Open();
if(conn.State != ConnectionStatus.Open) return;
cmd.CommandType=CommandType.Text;
using(var rdr = cmd.ExecuteReader())
{
while(rdr.Read())
{
tv.Nodes.Add(new TreeNode(rdr.GetString(0));
}
}
}
您可以通过节点创建获得更好的体验。看看各种构造函数,看看你想要什么。