用Public Overloads Shared Sub AddNode()可以調用到方法AddNode﹐但在方法addnode中為什么又不識別TreeView1控件而在Btn1_Click中可以呢﹐TreeView1是webform的控件名﹐ 錯誤原因﹕沒有類別的外顯執行個體,因此無法從共用方法或共用成員初始設定式中參考至類別的執行個體成員。 請問有沒有什么解決辦法 Public Sub Btn1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Btn1.Click Dim addstr As String = "new node" 'response.Write("DFDF") If Len(addstr) = 0 Then Return Else Dim curnode As TreeNode = TreeView1.GetNodeFromIndex(TreeView1.SelectedNodeIndex) '獲得當前節點對象的引用 Dim newnode As TreeNode = New TreeNode '生成一個新節點並賦值 newnode.Text = addstr curnode.Nodes.Add(newnode) '在當前節點下面增加一個新的節點 curnode.Expanded = True '使當前節點和新增節點處於展開狀態 TreeView1.SelectedNodeIndex = newnode.GetNodeIndex() '置新節點為選擇狀態 End If End Sub Public Overloads Shared Sub AddNode() Dim addstr As String = "new node" 'response.Write("DFDF") If Len(addstr) = 0 Then Return Else Dim curnode As TreeNode = TreeView1.GetNodeFromIndex(TreeView1.SelectedNodeIndex) '獲得當前節點對象的引用 Dim newnode As TreeNode = New TreeNode '生成一個新節點並賦值 newnode.Text = addstr curnode.Nodes.Add(newnode) '在當前節點下面增加一個新的節點 curnode.Expanded = True '使當前節點和新增節點處於展開狀態 TreeView1.SelectedNodeIndex = newnode.GetNodeIndex() '置新節點為選擇狀態 End If End Sub
eg.
public class ComFun
{
public static bool CheckRight(string person_id,string right_id)
{
...用的时候就是ComFun.CheckRight就可以了。
而WebForm是不一样的,当客户向服务器发出一个请求后,asp_net的解释器(虽然asp.net程序可以编译,但是,asp_net本身是利用isapi服务做的一个解析器,负责解析asp.net Web程序。),就根据所定义的Page类和其控件树(就是WebControl),解析成相应的HTML代码,返回给浏览器。至止,这个Page类的生命期已经结束了。
所以,在一个WebForm里面调用另一个WebForm里面的方法的话,是不现实的。
錯誤原因﹕沒有類別的外顯執行個體,因此無法從共用方法或共用成員初始設定式中參考至類別的執行個體成員。
請問有沒有什么解決辦法
Public Sub Btn1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Btn1.Click
Dim addstr As String = "new node"
'response.Write("DFDF")
If Len(addstr) = 0 Then
Return
Else
Dim curnode As TreeNode = TreeView1.GetNodeFromIndex(TreeView1.SelectedNodeIndex) '獲得當前節點對象的引用
Dim newnode As TreeNode = New TreeNode '生成一個新節點並賦值
newnode.Text = addstr
curnode.Nodes.Add(newnode) '在當前節點下面增加一個新的節點
curnode.Expanded = True '使當前節點和新增節點處於展開狀態
TreeView1.SelectedNodeIndex = newnode.GetNodeIndex() '置新節點為選擇狀態
End If
End Sub Public Overloads Shared Sub AddNode() Dim addstr As String = "new node"
'response.Write("DFDF")
If Len(addstr) = 0 Then
Return
Else
Dim curnode As TreeNode = TreeView1.GetNodeFromIndex(TreeView1.SelectedNodeIndex) '獲得當前節點對象的引用
Dim newnode As TreeNode = New TreeNode '生成一個新節點並賦值
newnode.Text = addstr
curnode.Nodes.Add(newnode) '在當前節點下面增加一個新的節點
curnode.Expanded = True '使當前節點和新增節點處於展開狀態
TreeView1.SelectedNodeIndex = newnode.GetNodeIndex() '置新節點為選擇狀態
End If End Sub
http://blog.csdn.net/lovecherry/archive/2005/02/25/302329.aspx