有关treegrid的使用的问题,急..不会的帮顶下..谢谢。.

问题描述

前天在CSDN下载频道下载了个DataTreeView.怎么用啊.?我用的时候老是报错...请会用的提供个详细的例子,谢谢拉....没用过的,我下面把代码贴上来。.NET高手帮忙看下啊。.谢谢。急..在线等.....这是DateTreeView.cs源代码1楼..这是TreeViewAdv.cs的源代码.2楼...这是我的窗体的代码publicForm1(){InitializeComponent();conn=t.s();//OracleCommandcm=newOracleCommand("select*fromemp",conn);OracleDataAdapterdr=newOracleDataAdapter("select*fromemp",conn);//DataSetds=newDataSet();DataTabledt=newDataTable();dr.FillSchema(dt,System.Data.SchemaType.Source);dr.Fill(dt);//DataTabledt=newDataTable();//DataGridViewd=newDataGridView();//d.DataSource=ds.Tables[0];//treegrid.DataSource=ds.Tables[0];dataGridView1.DataSource=dt;//label2.Text=dt.Columns[dt.PrimaryKey.id];try{this.td.DataSource=dt;}catch(Exceptione){this.label1.Text=e.ToString();}conn.Close();}运行就报Invalidtablestructure!异常.我看了一下.是DataTreeView.cs中的publicboolCheckTableStructure(DataTabletable){if(table==null)returnfalse;if((table.Columns[this.primaryKeys.ID]==null)||(table.Columns[this.primaryKeys.ParentID]==null)||(table.Columns[this.primaryKeys.Sequence]==null)){returnfalse;}这里返回的false.是主键的问题吗?我都手动设置了主键啊。请高手啊。......

解决方案

解决方案二:
这是DataTreeView.cs的部分代码#regionMemberinternalboolhasChanges=false;protectedboolhasErrors=false;protectedDataTabledataSource=null;privateDataTreeViewKeysprimaryKeys;privateDataTreeViewDataSourceTypedataSourceType=DataTreeViewDataSourceType.Unknow;privateDataColumn[]tablePK=null;privatestringnodeTextField="Name";#endregionprivatevoidInitalizeDataTreeView(){this.primaryKeys=DataTreeViewKeys.Default;this.ListenNodeOpEvents();InitExtendMenu();}internalDataTableGetSrcDataTable(){returnthis.dataSource;}#regionExtendeventspublicdelegatevoidDataSourceChangedHandle(objectsender,DataTreeViewDataSourceChangeEventArgse);publiceventDataSourceChangedHandleDataSourceChanged=null;#endregion#regionExtendinterfacepublicDataTreeViewKeysPrimaryKeys{get{returnthis.primaryKeys;}set{this.primaryKeys=value;}}publicstringNodeTextField{set{this.nodeTextField=value;if((this.nodeTextField==null)||(this.nodeTextField==string.Empty)){this.nodeTextField="Name";}}get{returnthis.nodeTextField;}}publicboolHasChanges{get{//returnthis.hasChanges;if((this.dataSource!=null)&&(this.dataSource.GetChanges()!=null)){returntrue;}else{returnfalse;}}}publicboolHasErrors{get{returnthis.hasErrors;}}publicvirtualvoidLoadFromXml(stringflieName){this.dataSourceType=DataTreeViewDataSourceType.XML;DataSetds=newDataSet("TreeViewStructure");ds.ReadXml(flieName);this.DataSource=ds.Tables[0];}publicvirtualvoidSaveToXml(stringfileName){if(this.dataSource==null){this.CreateDataSourceStructure();}this.AcceptDataSourceChanges();DataSetds=this.dataSource.DataSet;if(ds==null){ds=newDataSet("TreeViewStructure");ds.Tables.Add(this.dataSource);}ds.WriteXml(fileName,XmlWriteMode.WriteSchema);}publicvirtualDataTableDataSource{get{if(this.dataSource!=null){this.AcceptDataSourceChanges();this.ResetTablePK();}returnthis.dataSource;}set{this.dataSource=value;if(this.dataSource==null){if(this.DataSourceChanged!=null){this.DataSourceChanged(this,newDataTreeViewDataSourceChangeEventArgs(DataTreeViewDataSourceType.Unknow));}return;}if((!this.dataSource.HasErrors)&&(this.dataSourceType==DataTreeViewDataSourceType.XML)){this.dataSource.AcceptChanges();}this.LoadData();this.CancelTablePK();if(this.DataSourceChanged!=null){if(this.dataSourceType==DataTreeViewDataSourceType.Unknow){this.dataSourceType=DataTreeViewDataSourceType.DataBase;}this.DataSourceChanged(this,newDataTreeViewDataSourceChangeEventArgs(dataSourceType));}}}publicvoidAcceptDataSourceChanges(){if(this.dataSource!=null){this.AcceptChangeToDataSource(this.Nodes);//this.LoadData();}}publicvoidRejectDataSourceChanges(){if(this.dataSource!=null){this.dataSource.RejectChanges();this.LoadData();}}
解决方案三:
这也是DataTreeView.cs的部分代码publicboolCheckTableStructure(DataTabletable){if(table==null)returnfalse;if((table.Columns[this.primaryKeys.ID]==null)||(table.Columns[this.primaryKeys.ParentID]==null)||(table.Columns[this.primaryKeys.Sequence]==null)){returnfalse;}if((table.Columns[this.primaryKeys.ID].DataType!=System.Type.GetType("System.String"))||(table.Columns[this.primaryKeys.ParentID].DataType!=System.Type.GetType("System.String"))||((table.Columns[this.primaryKeys.Sequence].DataType!=System.Type.GetType("System.Int64"))&&(table.Columns[this.primaryKeys.Sequence].DataType!=System.Type.GetType("System.Int32"))&&(table.Columns[this.primaryKeys.Sequence].DataType!=System.Type.GetType("System.Int16")))){returnfalse;}returntrue;}publicDataTableCreateDataSourceStructure(){this.dataSource=newDataTable("DataTreeViewConfig");this.dataSource.Columns.Add(this.primaryKeys.ID,System.Type.GetType("System.String"));this.dataSource.Columns.Add(this.primaryKeys.ParentID,System.Type.GetType("System.String"));this.dataSource.Columns.Add(this.primaryKeys.Sequence,System.Type.GetType("System.Int64"));this.dataSource.Columns.Add("Text",System.Type.GetType("System.String"));returnthis.dataSource;}publicvoidWriteTreeRelation(stringsrcField,stringdestField,stringseparator){if(this.dataSource==null){thrownewException("DataSourceisnull!");}if((this.dataSource.Columns[srcField]==null)||(this.dataSource.Columns[destField]==null)){thrownewException("invalidsourcefieldordestinationfieldname!");}if((this.dataSource.Columns[srcField].DataType!=typeof(string))||(this.dataSource.Columns[destField].DataType!=typeof(string))){thrownewException("invalidsourcefieldordestinationfieldtype!");}separator=(separator==null)?string.Empty:separator;foreach(TreeNodenodeinthis.Nodes){this.WriteFullPathInfo(node,srcField,destField,separator);}}publicenumDataTreeViewDataSourceType{Unknow=0,DataBase,XML}publicclassDataTreeViewDataSourceChangeEventArgs:EventArgs{privateDataTreeViewDataSourceTypedataSourceType=DataTreeViewDataSourceType.Unknow;publicDataTreeViewDataSourceChangeEventArgs(DataTreeViewDataSourceTypedataSourceType):base(){this.dataSourceType=dataSourceType;}publicDataTreeViewDataSourceTypeDataSourceType{get{returnthis.dataSourceType;}}}publicstructDataTreeViewKeys{publicDataTreeViewKeys(stringidName,stringpIdName,stringseqName){this.ID=idName;this.ParentID=pIdName;this.Sequence=seqName;}publicstringID;publicstringParentID;publicstringSequence;publicstaticDataTreeViewKeysDefault{get{DataTreeViewKeyskeys=newDataTreeViewKeys();keys.ID="ID";keys.ParentID="ParentID";keys.Sequence="Sequence";returnkeys;}}
解决方案四:
dataGridView1.SelectedDataKey[0]
解决方案五:
帖的时候才发现太长了..只贴了DataTreeView.cs的部分代码..请高手帮忙看下啊。..谢谢拉.....
解决方案六:
3楼的,不是DataGridView控件...而且也没有那个属性.继续期待高手.....
解决方案七:
没有人用过吗?急啊......

时间: 2024-09-20 23:31:59

有关treegrid的使用的问题,急..不会的帮顶下..谢谢。.的相关文章

js html-在线等,急(大神帮帮忙):js动态嵌入html代码,代码中调用函数,当传参为字符串时,函数没有响应

问题描述 在线等,急(大神帮帮忙):js动态嵌入html代码,代码中调用函数,当传参为字符串时,函数没有响应 <!DOCTYPE html> <br> function insert()<br> {<br> var a="jioho";<br> var str="<table><tr><button type='button' onclick='test("+ a+"

apache linux-Linux下如何让apache拥有root权限运行,急,各位大哥帮帮忙,谢谢了

问题描述 Linux下如何让apache拥有root权限运行,急,各位大哥帮帮忙,谢谢了 Linux下如何让apache拥有root权限运行,急,各位大哥帮帮忙,谢谢了 解决方案 第一步,切换到root下su - root 第二步,安装super先到ftp://ftp.mdtsoft.com/pub/super 下载super-3.14.0-1.i386.rpm.这是一个RPM文件,其它包括了两个工具:setuid和super,以及它们的文档和man手册.用下面的命令将它安装到系统中: % rp

android菜鸟-flash-tool刷机总是导致虚拟机重启,,,急!!!!先谢谢拉

问题描述 flash-tool刷机总是导致虚拟机重启,,,急!!!!先谢谢拉 主机是Ubuntu10.04,虚拟机是XP,用的是VM--box

急!谁能帮我弄一张三星应用开发者论坛大会的嘉宾票?

问题描述 我是一个北京在校大学生,听说三星要开一个开发者论坛大会.现场应该有一些最前线的资料,或者测试机.我想认识一些开发高人,认识几个开发者会对我的开发学习有帮助!听说这个大会还要发布三星的新系统Bada吧,但是会不会发布还不知道!如果真发布,那这次的论坛大会现场应该会有测试机让大家体验吧!我想求助各位,请问我在哪能搞到这次大会的嘉宾票?或者闲置的记者证?因为我怕我进不去,好去现场搞点资料,看看都有什么资料,好有点准备,然后再考虑深入学习哪个智能平台吧!网上找的Bada手机照片各位谁能帮我弄到

急急急!!!!谢谢指教急!!!

问题描述 急!!!我希望知道NWBC平台的兄弟们解救下,我现在想控制NWBC里的一个界面的编辑按钮,对设计人员有只读功能,对数据人员有修改功能,我想问下这个系统自带的编辑按钮怎么控制? 解决方案 解决方案二: 解决方案三:你这个能用权限控制么?有事务码分开权限的吗?没有的话直接copy一个另外做一个只有查看权限的.试试看.

急求 各位大大帮帮忙

问题描述 关于C#中外部调用.EXE文件的相对路径的问题请问下格式是如何的谢谢 解决方案 解决方案二:<C#文件路径操作总结>:一.获取当前文件的路径1.System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName获取模块的完整路径,包括文件名.2.System.Environment.CurrentDirectory获取和设置当前目录(该进程从中启动的目录)的完全限定目录.3.System.IO.Directory.Ge

忘记Windows系统密码不用急 这个办法轻松帮你破解

忘记了Windows系统登陆密码的用户无需惊慌,PCWorld刊文阐述了如何在忘记Windows密码的情况下登录系统的方法. 是的,即使忘记了密码,用户仍然可以登录Windows系统--即使是在PC上没有其他管理员帐户的情况下.从安全角度看,这是一个令人恐慌的消息.但仍然有正当的理由使用下述技巧,它们不会使犯罪分子在用户不知情的情况下登录系统. PCWorld提供了在忘记密码的情况下登录Windows 7和Windows 10系统的方法.参照Windows 10的方法,Windows 8用户应当

各位大哥,小弟急求帮助!!!谢谢了

问题描述 大家好,我的毕业设计是主要内容:学习scala语言编程,搭建大数据开发平台hadoop以及Spark,在spark平台上提交大数据运算作业预期成果和表现形式:一个基于Spark的大数据运算平台,并实现一个示例数据处理程序的提交与运行请问下应该怎么做啊? 解决方案

急啊!大家帮帮忙

问题描述 我新建一个网站,但运行时却出现"http://localhost/website"配置到asp.net2.0为了使网站正常运行你可能要手动配置为asp.net2.0"请问要怎样配置啊?? 解决方案 解决方案二:打开iis--网站--右击你的网站虚拟目录--属性--asp.net标签更改