一、查询出数据库最大的索引
SQL语句如下:
select 字段 from 表
where 字段 = ( select max(ID字段) from 表)
二、静态类与非静态类的区别
如果是静态类的话,在别的类中可以直接用这个类名点方法名调用方法,而非静态类则必须要实例化对象,也就是new 一个。
三、后台操作DIV样式的方法:
只要在标签里加上runat ="server"和ID="MyTag",就可在后台代码中直接通过设置MyTag.Style的值来控制样式。例如:
在前端加入:
<div id="mydiv" runat="server"></div>
后台即可以直引用mydiv这个对像进行控制:
mydiv.Style["width"] = "100px";
mydiv.Style["height"] = "100px";
mydiv.Style["background-color"] = "yellow";
四、 C#操作TreeView组件中的一些常用方法及具体实现:
TreeView组件虽然是个操作起来比较麻烦的组件,但归根到底,能总结为三种基本操作:加入子节点、加入兄弟节点和删除节点。掌控了这三种常用操作,对于在编程中灵活运用TreeView组件是十分必要的。下面就分别来加以介绍。
(1).加入子节点:
所谓子节点,就是处于选定节点的下一级节点。加入子节点的具体过程是:首先要在TreeView组件中定位要加入的子节点的位置,然后创建一个节点对象,然后利用TreeVeiw类中对节点的加入方法(即:Add ( )方法),加入此节点对象。下面就是在treeView1组件中加入一个子节点的具体代码:
//首先判断是否选定组件中的位置
if ( treeView1.SelectedNode == null )
{
MessageBox.Show ( "请选择一个节点" , "提示信息" , MessageBoxButtons.OK , MessageBoxIcon.Information ) ;
}
else
{
//创建一个节点对象,并初始化
TreeNode tmp ;
tmp = new TreeNode ( "节点名称" ) ;
//在TreeView组件中加入子节点
treeView1.SelectedNode.Nodes.Add ( tmp ) ;
treeView1.SelectedNode = tmp ;
treeView1.ExpandAll ( ) ;
}
(2).加入兄弟节点:
所谓兄弟节点,就是在选定的节点的平级的节点。加入兄弟节点的方法和加入子节点的方法基本一致,只是在最后的实现方法上有着略微的差别。加入兄弟节点的具体步骤,首先也是要确定要加入的兄弟节点所处的位置,接着定义一个节点对象,最后调用TreeView类中对兄弟节点加入的方法,加入此节点对象。加入兄弟节点和加入子节点的最大差别就在于这最后一步。希望读者能够注意。下面是在TreeView组件加入一个兄弟节点的具体代码:
//首先判断是否选定组件中节点的位置
if ( treeView1.SelectedNode == null )
{
MessageBox.Show ( "请选择一个节点" , "提示信息" , MessageBoxButtons.OK , MessageBoxIcon.Information ) ;
}
else
{
//创建一个节点对象,并初始化
TreeNode tmp ;
tmp = new TreeNode ( textBox1.Text ) ;
//在TreeView组件中加入兄弟节点
treeView1.SelectedNode.Parent.Nodes.Add ( tmp ) ;
treeView1.ExpandAll ( ) ;
}
(3).删除节点:
删除节点就是删除TreeView组件中选定的节点,删除节点能是子节点,也能是兄弟节点,但无论节点的性质怎么,必须确保要删除的节点没有下一级节点,否则必须先删除此节点中的所有下一级节点,然后再删除此节点。删除节点比起上面的二个操作要显得略微简单,具体方法是:首先判断要删除的节点是否存在下一级节点,如果不存在,就调用TreeView类中的Remove ( )方法,就能删除节点了。下面是删除TreeView组件中节点的具体代码:
//判断选定的节点是否存在下一级节点
if ( treeView1.SelectedNode.Nodes.Count == 0 )
//删除节点
treeView1.SelectedNode.Remove ( ) ;
else
MessageBox.Show ( "请先删除此节点中的子节点!" , "提示信息" , MessageBoxButtons.OK , MessageBoxIcon.Information ) ;
(4).TreeView组件的一些其他常用操作:
其他的一些常用操作比起上面的三种操作,在具体实现上要显得简单许多。这些常用操作无非是,展开所有节点,展开指定的节点、和折叠所有节点。下面就来具体介绍一下:
< I > .展开所有节点:
要展开TreeView组件中的所有节点,首先就要把选定的节点指针定位在TreeView组件的根节点上,然后调用选定组件的ExpandAll方法就能了,下面是具体代码:
//定位根节点
treeView1.SelectedNode = treeView1.Nodes [ 0 ] ;
//展开组件中的所有节点
treeView1.SelectedNode.ExpandAll ( ) ;
< II > .展开选定节点的下一级节点:
由于只是展开下一级节点,所以就没有必要用ExpandAll ( )方法了。展开下一级节点只需要调用Expand ( )方法就能了,下面是具体的实现代码:
treeView1.SelectedNode.Expand ( ) ;
< III > .折叠所有节点:
折叠所有节点和展开所有节点是一组互操作,具体实现的思路也大致相同,折叠所有节点也是首先要把选定的节点指针定位在根节点上,然后调用选定组件的Collapse ( )就能了,下面是具体的实现代码:
//定位根节点
treeView1.SelectedNode = treeView1.Nodes [ 0 ] ;
//折叠组件中所有节点
treeView1.SelectedNode.Collapse ( ) ;
至此已把在C#操作TreeView组件的常用方法和一般方法基本都介绍
北航嵌入式培训
判断是否有子节点
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
TreeView tr = (TreeView)sender;
if (!tr.HasChildren)
{
MessageBox.Show("do nothing");
}
}
第二种,你点击的是TreeView中的节点,那么你可以用下面的方法
private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
{
TreeNode tn = e.Node;
if (tn.Nodes.Count >0)
MessageBox.Show("do nothing");
}