1.mybaseԴ?源码?
2.vb连接数据库sqlserver的问题
3.100分求一个用VB.net做的简单网页的代码,谢谢!源码!源码!源码
mybaseԴ?源码?
在窗体中加入两个txt框,两个按钮。源码源码资本 猎聘界面设计如上图所示。源码
数据库中设计access表,源码adminuser,源码表中创建username、源码passwrod两个文本字段。源码access文件名称为my.mdb.其源代码如下:
Imports System.Data
Imports System.Data.OleDb
Public Class LoginFrm
Inherits System.Windows.Forms.Form
Public ADOcmd As OleDbDataAdapter
Public ds As DataSet = New DataSet
Public mytable As Data.DataTable
Public myrow As Data.DataRow
Public rownumber As Integer
Public searchsql As String
Public cmd As OleDbCommandBuilder
Public Function ExecuteSQL(ByVal SQL As String,源码 ByVal table As String)
ADOcmd = New OleDbDataAdapter(SQL, "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" Application.StartupPath() "\my.mdb")
ADOcmd.Fill(ds, table)
mytable = ds.Tables.Item(0)
rownumber = 0
myrow = mytable.Rows.Item(rownumber)
End Function
#Region " Windows 窗体设计器生成的代码 "
Public Sub New()
MyBase.New()
'该调用是 Windows 窗体设计器所必需的。
InitializeComponent()
'在 InitializeComponent() 调用之后添加任何初始化
End Sub
'窗体重写 dispose 以清理组件列表。源码
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing The源码n
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
'Windows 窗体设计器所必需的
Private components As System.ComponentModel.IContainer
'注意: 以下过程是 Windows 窗体设计器所必需的
'可以使用 Windows 窗体设计器修改此过程。
'不要使用代码编辑器修改它。源码
vb连接数据库sqlserver的问题
/candcsharp/blog/item/eddecdbf1aaa.html
(三)用代码实现数据绑定
上面我们着重探讨了控件与数集据绑定的向导模式。这种模式虽然实现方法简单,但是却不灵活,可移植性较差。为此,我们为大家介绍如何用代码来实现数据绑定。用代码实现数据绑定的电脑设置源码输出优点在于灵活自由,代码移植方便。
为了便于更好的理解,我们仍然选用“TextBox”控件作为实例来介绍。
1.绑定到TextBox控件
(1)界面设计:
新建一个项目,按照图的方法设置程序界面,再增加一个Button控件,将其“Text“属性设为“TextBox数据绑定”。
(2)代码实现:
'指定程序中引用的名称空间:在代码窗中输入:
Imports System.Drawing
Imports System.Windows.Forms
Imports System.ComponentModel
Imports System
Imports System.Data.OleDb
Imports System.Data
'首先定义全局变量myDataSet及GetConnected()方法,代码如下:
Public Class Form1
Inherits Form
Private WithEvents Button1 As Button
Private TextBox1 As TextBox
……(省略部分自动生成代码)
Private myDataSet As DataSet
Private components As System.ComponentModel.Container
Public Sub New()
MyBase.New()
GetConnected() '这个过程是用于建立连接,打开数据库
InitializeComponent()
End Sub
'清除在程序中使用过的资源
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
……(省略部分自动生成代码)
End Sub
'
'为GetConnected()方法增加代码,用来打开数据表,返回数据集。
Public Sub GetConnected()
'创建一个 OleDbConnection
Dim ConnectionString As String = 〃 Provider = Microsoft.Jet.OLEDB.4.0; Data Source = e:\My Documents\db1.mdb〃
Dim myConn As OleDbConnection = New OleDbConnection()
myConn.ConnectionString = ConnectionString
Dim strCom As String = 〃 SELECT * FROM student 〃
'创建一个 DataSet
myDataSet = New DataSet()
myConn.Open()
'用 OleDbDataAdapter 得到一个数据集
Dim myCommand As OleDbDataAdapter = New OleDbDataAdapter(strCom, myConn)
'把Dataset绑定student数据表
myCommand.Fill(myDataSet, 〃student〃)
'关闭此OleDbConnection
myConn.Close()
End Sub
'初始化窗体中的组件
Private Sub InitializeComponent()
……(省略部分自动生成代码)
End Sub
'将各个文本框控件绑定到数据库的各个字段。
Private Sub Button1_Click(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles Button1.Click
TxtStuID.DataBindings.Add(New Binding(〃Text〃, Me.myDataSet, 〃student.StuID〃))
TxtStuName.DataBindings.Add(New Binding(〃Text〃, Me.myDataSet, 〃student.StuName〃))
TxtStuSex.DataBindings.Add(New Binding(〃Text〃, Me.myDataSet, 〃student.StuSex〃))
TxtStuBorn.DataBindings.Add(New Binding(〃Text〃, Me.myDataSet, 〃student.StuBorn〃))
TxtStuCore.DataBindings.Add(New Binding(〃Text〃, Me.myDataSet, 〃student.StuCore〃))
End Sub
End Class
Module Module1
Sub Main()
Application.Run(New Form1())
End SubEnd Module
编译后运行程序,看看是不是与上面介绍的实例运行结果相同。
在上面的代码中,我们新建了一个GetConnected()过程,用于建立连接,打开数据库。在用代码实现数据绑定或者对数据库进行任何操作前,就必须要先建立连接,萝莉吧源码打开数据库,程序运行结束后再关闭数据连接。
在Button1_Click过程中,我们把“TextBox”控件绑定到数据集myDataSet中“student”的各个字段上。
程序运行后,点击“TextBox数据绑定”按纽,程序就会用myDataSet中“student”中的数据来自动填充文本框。
2.绑定到Label控件
有了上面的内容做基础,再来讨论如何把数据集绑定到Label控件上就显得很简单了。把数据绑定到Label控件的方法与绑定到TextBox控件的方法大同小异。此处不再详细讲解,只给出代码实现绑定到Label控件的核心部分代码。
Private Sub Button1_Click (ByVal sender As Object , _
ByVal e As System.EventArgs ) Handles Button1.Click
'把student表的StuName字段绑定到Label1的Text属性上。
Label1.DataBindings.Add ( New Binding ( 〃Text〃 , Me.myDataSet , 〃student.StuName〃 ) )
End Sub
3.绑定到ComboBox控件
上面介绍的是对组件的简单数据绑定,对组件的复杂数据绑定和它有所区别,也有所相同,具体如下:
(1)要对ComboBox组件实现数据绑定,首先也是要打开数据表,得到数据集。这和上面TextBox组件的代码大致一样,在此略过。如何读框架源码
(2)实现数据绑定:
设定了ComboBox组件的三个属性就可以实现数据绑定了,这三个属性是“DataSource”、“DisplayMember”、“ValueMember”。其中DataSource表示指定的数据集;DisplayMember表示ComboBox组件显示的字段值;ValueMember表示ComboBox组件选择后的值。这三个属性的具体使用方法如下:
ComboBox1.DataSource = Me.myDataSet
ComboBox1.DisplayMember = 〃studnet.StuName〃
ComboBox1.ValueMember = 〃 studnet.StuName 〃
下面我们就来看看把数据集绑定到ComboBox控件的核心代码:
Private Sub Button1_Click ( ByVal sender As Object , _
ByVal e As System.EventArgs ) Handles Button1.Click
ComboBox1.DataSource = Me.myDataSet
ComboBox1.DisplayMember = 〃student.StuName〃
ComboBox1.ValueMember = 〃 student.StuName 〃
End Sub
注意:对ComboBox控件进行数据绑定的方法同样适用于ListBox控件,因此关于LisBox控件数据绑定方法本文将不再介绍。需要者请参阅ComboBox相关内容。
三、数据库简单操作
前面介绍了ADO.NET基础,以及ADO.NET与Windows窗体控件的绑定方法。但是,对于数据库编程我们更想了解的还是如何增加记录,删除记录,更新记录等数据库记录的操作方法。这里我们将以一个具体的实例为大家介绍这些操作方法。
在图3中,有btnFirst(第一个记录),btnEnd(最后一条记录),btnAdd(增加记录),btnDel(删除记录),四轴 PID 源码btnEdit(修改记录)控件。
用代码形式打开数据并在frmtest_load中把数据绑定给TextBox控件。此处给出源代码:
'打开数据库
Public Sub OpenData()
'创建一个 OleDbConnection
Dim ConnectionString As String = 〃 Provider = Microsoft.Jet.OLEDB.4.0; Data Source = e:\My Documents\db1.mdb〃
Dim myConn As OleDbConnection = New OleDbConnection()
myConn.ConnectionString = ConnectionString
Dim strCom As String = 〃 SELECT * FROM student 〃
'创建一个 DataSet
myDataSet = New DataSet()
myConn.Open()
'用 OleDbDataAdapter 得到一个数据集
Dim myCommand As OleDbDataAdapter = New OleDbDataAdapter(strCom, myConn)
'把Dataset绑定student数据表
myCommand.Fill(myDataSet, 〃student〃)
'关闭此OleDbConnection
myConn.Close()
End Sub
'绑定数据到TextBox控件
Private Sub frmtest_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
txtStuID.DataBindings.Add(New Binding(〃Text〃, Me.myDataSet, 〃student.StuID〃))
txtStuName.DataBindings.Add(New Binding(〃Text〃, Me.myDataSet, 〃student.StuName〃))
txtStuSex.DataBindings.Add(New Binding(〃Text〃, Me.myDataSet, 〃student.StuSex〃))
txtStuBorn.DataBindings.Add(New Binding(〃Text〃, Me.myDataSet, 〃student.StuBorn〃))
txtStuCore.DataBindings.Add(New Binding(〃Text〃, Me.myDataSet, 〃student.StuCore〃))
End Sub
完成以上步骤后,我们就可以通过编程对数据库进行各作操作了。
1.实现对数据记录的浏览
在完成对窗体中的WinForm组件进行绑定后,实现对数据记录的浏览操作的关键就是要找到如何定位数据记录指针的方法。而要实现这种处理就需要用到.NET FrameWork SDK中的名称空间System.Windows.Froms中的BindingManagerBase类。
BindingManagerBase是一个抽象的类,主要用于管理同一数据表所有绑定对象。BindingManagerBase类中定义了二个属性“position”和“Count”,第一个属性是定义当前数据指针,而第二个属性主要是得到当前数据集有多少记录数目。在已经进行完数据绑定后,通过这两个属性配合使用,实现对数据记录的浏览。
(1)向上翻阅一条记录:
双击“上一条”按钮,在代码窗中输入以下代码:
Private Sub btnPrevious_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPrevious_.Click
Me.BindingContext(myDataSet, 〃student〃).Position -= 1
End Sub
(2)向下翻阅一条记录:
双击“下一条”按钮在代码窗中输入以下代码:
Private Sub btnNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesbtnNext.Click
Me.BindingContext(myDataSet, 〃student〃).Position += 1
End Sub
(3)翻到最后一条记录:
双击“最后一条记录”按钮,在代码窗中输入以下代码:
Private Sub btnEnd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEnd.Click
Me.BindingContext(myDataSet, 〃student〃).Position = Me.BindingContext(myDataSet, 〃student〃).Count - 1
End Sub
(4)翻阅到第一条记录:
双击“第一条记录”按钮,在代码窗中输入以下代码:
Private Sub btnFirst_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnFirst.Click
Me.BindingContext(myDataSet, 〃student〃).Position = 0
End Sub
说明:为了代码书写方便,我们可以先定义一个BindingManagerBase对象myBind,如myBind = Me.BindingContext (myDataSet, 〃student〃 ),于是以上各句代码均可以简写成:
向上翻阅一条记录:myBind.Position = myBind.Position - 1
向下翻阅一条记录:myBind.Position = myBind.Position + 1
翻阅到最后一条记录:myBind.Position=myBind.count - 1
翻阅到第一条记录:myBind.Position = 0
2.删除数据记录
双击“删除记录”按钮,在代码窗中输入以下代码:
Private Sub btnDel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDel.Click
Dim ConnectionString As String = 〃 Provider = Microsoft.Jet.OLEDB.4.0; Data Source = e:\My Documents\db1.mdb〃
Dim myConn As OleDbConnection = New OleDbConnection()
myConn.ConnectionString = ConnectionString
myConn.Open()
Dim strDele As String = 〃DELETE From student WHERE StuID = '〃 + txtStuID.Text + 〃 '〃
Dim myCommand As OleDbCommand = New OleDbCommand(strDele, myConn)
myCommand.ExecuteNonQuery() myDataSet.Tables(〃student〃).Rows(Me.BindingContext(myDataSet, 〃student〃).Position).Delete()
myDataSet.Tables(〃student〃).AcceptChanges()
.myConn.Close()
End Sub
前面四行代码我们已经非常熟悉,目的是建立与数据据的连接并打开数据库。第6行代码我们建立一个SQL查询,用来查询数据表中StuID字段值等于TxtStuID.Text输入值的所有记录。并在第7行代码中将查询结果建立一个新的OleDbCommand对象,用来指定要删除的记录。第8行代码是从数据库中删除指定的记录,第9行代码是从myDataSet中删除记录。前者是物理上删除记录,如果去掉第8行代码运行程序你就会发现,记录只是在当前操作中被删除了,在数据库中依然存在。
其中第6行代码中定义的SQL查询条件读者可以根据需要自行指定。需要说明的是,由于我们在创建数据表时,指定StuID字段的类型为Text类型,因此在书写SQL语名时要在“=”号前加上单引号,具体格式请参照第6行代码。如果StuID字段类型为数字型,那么第6行正确写法应该为:
Dim strDele As String = 〃DELETE From student WHERE StuID = 〃 + txtStuID.Text
3.修改数据记录
修改数据的方法有很多,本文中我们将以采用SQL语言来修改数据记录为例详细介绍一下如何修改数据记录。下面我们先看看程序代码:
Dim ConnectionString As String = 〃 Provider = Microsoft.Jet.OLEDB.4.0; Data Source = e:\My Documents\db1.mdb〃
Dim myConn As OleDbConnection = New OleDbConnection()
myConn.ConnectionString = ConnectionString
myConn.Open()
'以上代码用来连接数据源
myDataSet.Tables(〃student〃).Rows(Me.BindingContext(myDataSet, 〃student〃).Position).BeginEdit()
'利用SQL语句创建数据更新集合
Dim StrUpdate As String = 〃Update student SET StuName='〃 + txtStuName.Text + 〃',StuSex='〃 + txtStuSex.Text + 〃',StuBorn='〃 + txtStuBorn.Text + 〃',StuCore='〃 + txtStuCore.Text + 〃' WHERE StuID='〃 + txtStuID.Text + 〃'〃
'利用SQL结果创建新的OleDbCommand对象
Dim myCommand As OleDbCommand = New OleDbCommand(StrUpdate, myConn)
myCommand.ExecuteNonQuery()
myDataSet.Tables(〃student〃).Rows(Me.BindingContext(myDataSet, 〃student〃).Position).EndEdit()
myDataSet.Tables(〃student〃).AcceptChanges()
myConn.Close()
MsgBox(〃数据修改完成!〃)
上述代码中我们采用SQL语言中的Update语名来更新记录,对各个TextBox中的值修改后更新到数据库。其中重要语句就是SQL语句的编写。如果你有不明白的地方,请参阅SQL相关资料。代码中我们同时还利用了BeginEdit()与EndEdit()方法,任何从数据的修改都必须在这两个方法之间进行。前者是数据修改的入口,后者则是完成将数据写入数据库的工作。
4.增加数据记录
增加数据记录与修改数据在实现方法上有很多相同之处。在下面的实例中我们利用SQL的Insert语句在指定位置插入一条记录,把更新到数据库。如果你想在数据表最后增加一条记录,只需要将数据记录指针指向数据表末尾就行了。
Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click
Dim ConnectionString As String = 〃 Provider = Microsoft.Jet.OLEDB.4.0; Data Source = e:\My Documents\db1.mdb〃
Dim myConn As OleDbConnection = New OleDbConnection()
myConn.ConnectionString = ConnectionString
myConn.Open()
Dim StrAdd As String = 〃insert into student (Stuid,StuName,StuSex,StuBorn,StuCore) values('〃 + txtStuID.Text + 〃','〃 + txtStuName.Text + 〃','〃 + txtStuSex.Text + 〃','〃 + txtStuBorn.Text + 〃','〃 + txtStuCore.Text + 〃')〃
Debug.Write(StrAdd)
Dim myCommand As OleDbCommand = New OleDbCommand(StrAdd, myConn)
myCommand.ExecuteNonQuery()
myConn.Close()
myDataSet.Tables(〃student〃).Rows(Me.BindingContext(myDataSet, 〃student〃).Position).BeginEdit()
myDataSet.Tables(〃student〃).Rows(Me.BindingContext(myDataSet, 〃student〃).Position).EndEdit()
myDataSet.Tables(〃student〃).AcceptChanges()
MsgBox(〃数据增加完成!〃)
End Sub
有了前面几种基本操作方法的代码分析后,这段代码相信不难理解。大家需要关注的还是SQL语句是如何实现数据记录增加的。这种方法具有一定的通行性。
完成上述设计后我们来看看整个程序的运行结果。按下F5键运行程序即可。
本文中所有代码均在Windows XP+VB.NET环境下调试通过。
分求一个用VB.net做的简单网页的代码,谢谢!!!
用vb.net做的校友录……(附所有源代码)
来源:不详 作者 佚名 点击数: 录入时间:-- ::
想必大家都上过校友录吧,里面的功能虽然不是很强大,但是为我们这些毕业之后各奔西东的学子来说,到真是提供了一个好的聚集点,下面是我用vb.net做的校友录,当然也不能说是校友录了,只能说是我们班的学友录了:)不过只要你掌握了这种编程思想,校友录就不在话下了。这里我将重点谈一下关于管理员权限赋予。
以前有这个想法的时候,难就难在管理员身份的赋予上,开始想如果一般用户在被提升为管理员之后,我可以把他的信息转到另外一个表中,以后登陆的时候先检查manage表中是否有他就行了,这种办法我已经实现了,是不是有些笨……可是正在我要正式开工的时候,一个想法突然冒了出来,是什么呢?呵呵,就是在数据库中再增加一个字段了如果是第一次注册就让这个字段item(int)的值为0,要是被提升之后就update为1,班级创始人呢?当然了,在他申请时付给他一个班级id,然后先判断班级id为这个已经注册的人信息条数是否为0,如果是,那么就付给他item=2好了。下面的代码中,我没有实现这个功能,因为我做的是班友录的,当然了,我就是管理员喽:)
在这里,我使用的是checkboxlist(两个),一个用来转换数据(visibe=fause),一个用来显示数据,还有一个checkbox用来写全部选中的事件。当然了还有两个按钮事件,一个是用来提升为管理员的,一个是用来降级为一般用户的,这两个按钮在判断为一般用户时
enable都是为fause的,只有当判断登录为管理员时才为true。当然了,如果你是班级创始人,是不可能被降级的:)
这里用来显示信息的我用的是一个datagrid,当判断为非管理员时,删除栏的visible将为fause,为管理员的时候,才为true,也就是说只有管理员才可以删除信息。而不是注册的用户是不能发言的所有的按钮控件的enable将都为fause。
代码如下:board.aspx
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="boaman.aspx.vb" Inherits="_re1.boaman"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title></title>
<meta content="Microsoft Visual Studio.NET 7.0" name="GENERATOR">
<meta content="Visual Basic 7.0" name="CODE_LANGUAGE">
<meta content="javascript" name="vs_defaultClientScript">
<meta content="/intellisense/ie5" name="vs_targetSchema">
</HEAD>
<body background="image/bg.gif" MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<asp:checkbox id="yourcheck" style="Z-INDEX: ; LEFT: px; POSITION: absolute; TOP: px" runat="server" Text="全部选中" AutoPostBack="True" ForeColor="SaddleBrown" Font-Bold="True"></asp:checkbox>
<asp:button id="Button1" style="Z-INDEX: ; LEFT: px; POSITION: absolute; TOP: px" runat="server" Text="提升为管理员" Height="px" Width="px" BackColor="Gainsboro" BorderColor="Lavender" BorderWidth="2px" BorderStyle="Outset"></asp:button>
<asp:button id="Button2" style="Z-INDEX: ; LEFT: px; POSITION: absolute; TOP: px" runat="server" Text="降级为一般用户" Height="px" Width="px" BackColor="Gainsboro" BorderColor="Lavender" BorderWidth="2px" BorderStyle="Outset"></asp:button>
<asp:checkboxlist id="CheckBoxList1" style="Z-INDEX: ; LEFT: px; POSITION: absolute; TOP: px" runat="server" Visible="False"></asp:checkboxlist>
<asp:checkboxlist id="mycheck" style="Z-INDEX: ; LEFT: px; POSITION: absolute; TOP: px" runat="server" ForeColor="Navy" Font-Size="X-Small"></asp:checkboxlist>
<asp:label id="Label1" style="Z-INDEX: ; LEFT: px; POSITION: absolute; TOP: px" runat="server" ForeColor="Red" Font-Names="方正姚体">(已注册用户)</asp:label>
<asp:image id="Image1" style="Z-INDEX: ; LEFT: px; POSITION: absolute; TOP: px" runat="server" Height="px" Width="px" ImageUrl="image/re1-1.gif"></asp:image>
<asp:datagrid id="DataGrid1" style="Z-INDEX: ; LEFT: px; POSITION: absolute; TOP: px" runat="server" Height="px" Width="px" BorderColor="#ffcc" AutoGenerateColumns="False" HeaderStyle-Font-Size="9" HeaderStyle-HorizontalAlign="Center" HeaderStyle-ForeColor="red" HeaderStyle-Font-Bold="True">
<Columns>
<asp:HyperLinkColumn ItemStyle-ForeColor="navy" ItemStyle-HorizontalAlign="Center" ItemStyle-Height="" ItemStyle-Font-Size="9" DataNavigateUrlField="stu_id" DataNavigateUrlFormatString="querry.aspx?stu_id={ 0}" DataTextField="stu_id" HeaderText="学号"></asp:HyperLinkColumn>
<asp:BoundColumn ItemStyle-ForeColor="navy" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="" ItemStyle-Font-Size="9" DataField="tel" HeaderText="电话"></asp:BoundColumn>
<asp:BoundColumn ItemStyle-ForeColor="navy" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="" ItemStyle-Font-Size="9" DataField="oicq" HeaderText="OICQ"></asp:BoundColumn>
<asp:BoundColumn ItemStyle-ForeColor="navy" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="" ItemStyle-Font-Size="9" DataField="email" HeaderText="E-mail"></asp:BoundColumn>
<asp:BoundColumn ItemStyle-ForeColor="navy" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="" ItemStyle-Font-Size="9" DataField="point" HeaderText="登录次数"></asp:BoundColumn>
</Columns>
</asp:datagrid>
</form>
</body>
</HTML>
下面是codebehind中的内容:boaman.asp.vb
Imports System.Data
Imports System.Data.SqlClient
Public Class boaman
Inherits System.Web.UI.Page
Protected WithEvents yourcheck As System.Web.UI.WebControls.CheckBox
Protected WithEvents Button1 As System.Web.UI.WebControls.Button
Protected WithEvents CheckBoxList1 As System.Web.UI.WebControls.CheckBoxList
Protected WithEvents mycheck As System.Web.UI.WebControls.CheckBoxList
Protected WithEvents Label1 As System.Web.UI.WebControls.Label
Protected WithEvents Image1 As System.Web.UI.WebControls.Image
Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid
Protected WithEvents Button2 As System.Web.UI.WebControls.Button
#Region " Web Form Designer Generated Code "
'This call is required by the Web Form Designer.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
End Sub
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: This method call is required by the Web Form Designer
'Do not modify it using the code editor.
InitializeComponent()
End Sub
#End Region
Dim conn As SqlConnection = New SqlConnection("server=lixinri;uid=sa;pwd=;database=re1")
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'////////////////////判断是否为过客
If Session("stu_id") = "" Then
Button1.Enabled = False : Button2.Enabled = False
'////////////////////调用check()事件
check()
Else
If Not IsPostBack Then
Dim sql As String = "select * from pwd where stu_id=@stu_id"
Dim comm As SqlCommand = New SqlCommand(sql, conn)
comm.Parameters.Add(New SqlParameter("@stu_id", SqlDbType.Int, 4))
comm.Parameters("@stu_id").Value = Session("stu_id")
Dim dr As SqlDataReader
conn.Open()
dr = comm.ExecuteReader
While dr.Read
If dr.Item("term") = "0" Then
'///////////////////判断是否为一般用户
dr.Close()
Button1.Enabled = False : Button2.Enabled = False
Dim sql_1 As String = "select a.stu_id as stu_id,a.term,b.name as name,b.tel as tel,b.call as oicq,b.point as point,b.email from pwd a,stu_base b where a.stu_id=b.stu_id"
Dim cmd As New SqlCommand(sql_1, conn)
dr = cmd.ExecuteReader
While dr.Read
If dr.Item("term") = "1" Then
mycheck.Items.Add("<u>" & dr.Item("name") & "</u>" & "<font color=darkorange>(管理员)</font>")
ElseIf dr.Item("term") = "2" Then
mycheck.Items.Add("<u>" & dr.Item("name") & "</u>" & "<font color=red>(班级创始人)<font>")
Else
mycheck.Items.Add("<u>" & dr.Item("name") & "</u>")
End If
CheckBoxList1.Items.Add(dr.Item("stu_id"))
End While
Else
'////////////////////判断是否为管理员
dr.Close()
Button1.Enabled = True : Button2.Enabled = True
Dim sql_1 As String = "select a.stu_id as stu_id,a.term,b.name as name,b.tel as tel,b.call as oicq,b.point as point,b.email from pwd a,stu_base b where a.stu_id=b.stu_id"
Dim cmd As New SqlCommand(sql_1, conn)
dr = cmd.ExecuteReader
While dr.Read
If dr.Item("term") = "1" Then
mycheck.Items.Add("<u>" & dr.Item("name") & "</u>" & "<font color=darkorange>(管理员)</font>")
ElseIf dr.Item("term") = "2" Then
mycheck.Items.Add("<u>" & dr.Item("name") & "</u>" & "<font color=red>(班级创始人)<font>")
Else
mycheck.Items.Add("<u>" & dr.Item("name") & "</u>")
End If
CheckBoxList1.Items.Add(dr.Item("stu_id"))
End While
End If
End While
dr.Close()
'////////////////////////取出数据,填充dataset
Dim mysql As String = "select a.stu_id as stu_id,a.term,b.name as name,b.tel as tel,b.call as oicq,b.point as point,b.email from pwd a,stu_base b where a.stu_id=b.stu_id"
comm = New SqlCommand(mysql, conn)
Dim mycomm As SqlDataAdapter = New SqlDataAdapter(mysql, conn)
Dim ds As DataSet = New DataSet()
mycomm.Fill(ds, "base")
DataGrid1.DataSource = ds.Tables("base").DefaultView
DataGrid1.DataBind()
End If
End If
End Sub
'///////////////////////书写check()事件
Sub check()
If Not IsPostBack Then
Dim mysql As String = "select a.stu_id as stu_id,a.term,b.name as name,b.tel as tel,b.call as oicq,b.point as point,b.email from pwd a,stu_base b where a.stu_id=b.stu_id"
Dim comm As New SqlCommand(mysql, conn)
Dim dr As SqlDataReader
conn.Open()
dr = comm.ExecuteReader
While dr.Read
If dr.Item("term") = "1" Then
mycheck.Items.Add("<u>" & dr.Item("name") & "</u>" & "<font color=darkorange>(管理员)</font>")
ElseIf dr.Item("term") = "2" Then
mycheck.Items.Add("<u>" & dr.Item("name") & "</u>" & "<font color=red>(班级创始人)<font>")
Else
mycheck.Items.Add("<u>" & dr.Item("name") & "</u>")
End If
CheckBoxList1.Items.Add(dr.Item("stu_id"))
End While
dr.Close()
Dim mycomm As SqlDataAdapter = New SqlDataAdapter(mysql, conn)
Dim ds As DataSet = New DataSet()
mycomm.Fill(ds, "base")
DataGrid1.DataSource = ds.Tables("base").DefaultView
DataGrid1.DataBind()
End If
End Sub
'/////////////////////填充yourcheck
Private Sub yourcheck_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles yourcheck.CheckedChanged
Dim i As Integer
For i = 0 To mycheck.Items.Count - 1
If yourcheck.Checked Then
mycheck.Items(i).Selected = True
Else
mycheck.Items(i).Selected = False
End If
Next
End Sub
'///////////////////////提升一般用户为管理员
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
conn.Open()
Dim i As Integer
For i = 0 To mycheck.Items.Count - 1
If mycheck.Items(i).Selected Then
Dim sql_1 As String = "update pwd set term=1 where stu_id=@stu_id and term=0"
Dim comm As SqlCommand = New SqlCommand(sql_1, conn)
comm.Parameters.Add(New SqlParameter("@stu_id", SqlDbType.Int, 4))
comm.Parameters("@stu_id").Value = CheckBoxList1.Items(i).Text
comm.ExecuteNonQuery()
End If
Next
Response.Redirect("boaman.aspx")
End Sub
'///////////////////////降级管理员为一般用户
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
conn.Open()
Dim i As Integer
For i = 0 To mycheck.Items.Count - 1
If mycheck.Items(i).Selected Then
Dim sql_1 As String = "update pwd set term=0 where stu_id=@stu_id and term=1"
Dim comm As SqlCommand = New SqlCommand(sql_1, conn)
comm.Parameters.Add(New SqlParameter("@stu_id", SqlDbType.Int, 4))
comm.Parameters("@stu_id").Value = CheckBoxList1.Items(i).Text
comm.ExecuteNonQuery()
End If
Next
Response.Redirect("boaman.aspx")
End Sub
End Class
当然了,这里面还有好多不足的地方,恳求高手批评指正。
校友录还有一些其它的功能就很简单了,这里就不再探讨了。