/* ini 文件 [Parameters] Auto=1 Connect=0*/ #region 导入读取ini文件动态库 [DllImport("kernel32")] private static extern long WritePrivateProfileString(string section, string key, string val, string filePath); [DllImport("kernel32")] private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath); #endregion//获取info.ini视频配置文件 string path = Application.StartupPath + "\\" + "info.ini"; StringBuilder temp = new StringBuilder(255); int i = GetPrivateProfileString("Parameters", "Auto", "1", temp, 255, path);
接上 string IsAuto = temp.ToString();
大哥~!麻烦您了,我ini文件可以读出来, 关键的是循环往TreeView里添。谢谢!
你可以先将ini文件中读出来的数据存在table中,然后遍历table插入到treeview中?
DataTable table = new DataTable("childTable"); DataColumn column; DataRow row; column = new DataColumn(); column.DataType = System.Type.GetType("System.Int32"); column.ColumnName = "Id"; table.Columns.Add(column); column = new DataColumn(); column.DataType = System.Type.GetType("System.String"); column.ColumnName = "Name"; table.Columns.Add(column); column = new DataColumn(); column.DataType = System.Type.GetType("System.String"); column.ColumnName = "Value"; table.Columns.Add(column); for (int i = 0; i <= 5; i++) { row = table.NewRow(); row["ID"] = "100" + i; row["Name"] = "Name" + i; row["Value"] = "PampasHawk" + i; table.Rows.Add(row); } for (int m = 0; m < table.Rows.Count; m++) { TreeNode node = treeView1.Nodes.Add(table.Rows[m]["ID"].ToString()); TreeNode node1 = node.Nodes.Add(table.Rows[m]["Name"].ToString()); node.Nodes.Add(table.Rows[m]["Value"].ToString()); node1.Nodes.Add(table.Rows[m]["Value"].ToString()+"子节点"); }
你ini文件的格式是什么样的? 不知道你ini的文件格式 基本方法是这样 using (StreamReader sr = new StreamReader(@"C:\Documents and Settings\zd-liuyi\桌面\1.txt")) { while (!sr.EndOfStream) { string str = sr.ReadLine(); this.treeView1.Nodes.Add(str);
创建流,
流读取ini文件.
然后创建树的节点.
读到之后,给节点赋值.
关闭流.
完毕.
我可以给你一个网站,你看下吧。
http://www.cnblogs.com/zzyyll2/archive/2007/11/06/950584.html
我ini已经读出来。关键是配合TreeView使用的时候就范晕了 。
TreeNode node1 = node.Nodes.Add(" b");
node.Nodes.Add("c");
node1.Nodes.Add("d");
node1.Nodes.Add("e");
这是最简单的树.我刚乱写的.你参考下吧.
ini 文件 [Parameters]
Auto=1
Connect=0*/ #region 导入读取ini文件动态库
[DllImport("kernel32")]
private static extern long WritePrivateProfileString(string section, string key, string val, string filePath); [DllImport("kernel32")]
private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);
#endregion//获取info.ini视频配置文件
string path = Application.StartupPath + "\\" + "info.ini";
StringBuilder temp = new StringBuilder(255);
int i = GetPrivateProfileString("Parameters", "Auto", "1", temp, 255, path);
string IsAuto = temp.ToString();
大哥~!麻烦您了,我ini文件可以读出来, 关键的是循环往TreeView里添。谢谢!
DataColumn column;
DataRow row; column = new DataColumn();
column.DataType = System.Type.GetType("System.Int32");
column.ColumnName = "Id"; table.Columns.Add(column); column = new DataColumn();
column.DataType = System.Type.GetType("System.String");
column.ColumnName = "Name";
table.Columns.Add(column); column = new DataColumn();
column.DataType = System.Type.GetType("System.String");
column.ColumnName = "Value";
table.Columns.Add(column);
for (int i = 0; i <= 5; i++)
{
row = table.NewRow();
row["ID"] = "100" + i;
row["Name"] = "Name" + i;
row["Value"] = "PampasHawk" + i;
table.Rows.Add(row);
} for (int m = 0; m < table.Rows.Count; m++)
{
TreeNode node = treeView1.Nodes.Add(table.Rows[m]["ID"].ToString());
TreeNode node1 = node.Nodes.Add(table.Rows[m]["Name"].ToString());
node.Nodes.Add(table.Rows[m]["Value"].ToString());
node1.Nodes.Add(table.Rows[m]["Value"].ToString()+"子节点");
}
不知道你ini的文件格式 基本方法是这样 using (StreamReader sr = new StreamReader(@"C:\Documents and Settings\zd-liuyi\桌面\1.txt"))
{
while (!sr.EndOfStream)
{
string str = sr.ReadLine();
this.treeView1.Nodes.Add(str);
}
sr.Close();
}
现在问题又来了, 我ini里存的是联系人. 有很多, 这个怎么循环读取呢?然后 我有个父节点,叫联系人. 就光给它下面添加子项就行. 。谢谢~!
你只需要将读取后的数据绑定TreeView控件即可:
http://download.csdn.net/source/1910043
TreeNode nod = this.treeView1.Nodes.Add("联系人");
//假设你的所有联系人都是在对象里保存的。对象全部用一个数组保存,对象名叫User
foreach (User var in ArrayList)
{
//循环你得到的ini文件里的人
TreeNode nod1 = nod.Nodes.Add("var.userName");
nod1.Nodes.Add("var.Tel");
nod1.Nodes.Add("var.Address");
}