paraset.aspx
来自「ASP.NET开发实战详解」· ASPX 代码 · 共 278 行
ASPX
278 行
<%@ Page Language="VB" Debug="true" %>
<%@ import Namespace="system.data" %>
<%@ import Namespace="system.data.sqlclient" %>
<script runat="server">
dim Cnn as sqlconnection
dim cmd as sqlcommand
Sub Page_Load(Sender As Object, E As EventArgs)
If Not IsPostBack Then
If Session("curruser") = "" Then
Response.Redirect("../index.aspx")
End If
Seltype.DataSource = CreateDataSource()
Seltype.DataTextField = "name"
Seltype.DataValueField = "typecode"
Seltype.DataBind()
BindGrid()
End If
End Sub
Function CreateDataSource() As ICollection
dim dtcmd as sqldataadapter
dim dset as dataset
cnn=new sqlconnection(configurationsettings.appsettings("connection"))
dtcmd=new sqldataadapter("select * from fw_para where type='title' order by id",cnn)
dset=new dataset
dtcmd.fill(dset)
Dim dv As New DataView(dset.tables(0))
Return dv
cnn.close()
End Function
Sub Save_Click(Sender As Object, E As EventArgs)
dim codeStr as string=code.text
dim nameStr as string=name.text
dim typeStr as string=seltype.selecteditem.value
dim memostr as string=memo.text
dim sql as string
dim dataR as sqldatareader
cnn=new sqlconnection(configurationsettings.appsettings("connection"))
cnn.open()
sql="select * from fw_para where type='" & typestr & "' and (name='" & trim(namestr) & "' or code='" & codestr & "')"
cmd=new sqlcommand(sql,cnn)
datar=cmd.executereader()
if datar.read() then
page.registerstartupscript("",getalertinfo("该类型下的代码或名称重复,无法保存!"))
else
datar.close()
sql="insert into fw_para(code,name,type,memo) values('" & codestr & "','" & namestr & "','" & typestr & "','" & memostr & "')"
cmd=new sqlcommand(sql,cnn)
cmd.executeNonQuery
cnn.close()
bindgrid()
call cleardata()
page.registerstartupscript("",getalertinfo("数据保存成功!"))
end if
End Sub
Sub Clear_Click(Sender As Object, E As EventArgs)
call cleardata()
End Sub
sub cleardata()
code.text=""
name.text=""
memo.text=""
end sub
Sub BindGrid()
dim dataR as sqldatareader
dim dtcmd as sqldataadapter
dim dt as new datatable
dim thetype as string =seltype.selecteditem.value
dim MaxPage as integer '计算最大页数
dim str2 as string
dim Str1 as string
dim i as integer
dim sumrecord as integer
cnn=new sqlconnection(configurationsettings.appsettings("connection"))
str2="select count(*) as nums from fw_para where type='" & thetype & "'"
cmd=new sqlcommand(str2,cnn)
cnn.open()
datar=cmd.executereader()
if datar.read() then
if datar("nums").tostring()="0" then
msg.text=""
else
msg.text="合计:记录数 " & datar("nums").tostring()
end if
end if
datar.close()
str1="select code,name,(select name from fw_para where type='title' and typecode=a.type) as type,type as typename,memo from fw_para a where type='" & thetype & "' order by code"
dtcmd=new sqldataadapter(str1,cnn)
dtcmd.fill(dt)
if (dt.defaultview.count mod datagrid1.pagesize)>0 then
maxpage=dt.defaultview.count \datagrid1.pagesize+1
else
maxpage=dt.defaultview.count \datagrid1.pagesize
end if
do while datagrid1.currentpageindex>0
if maxpage<datagrid1.currentpageindex+1 then
datagrid1.currentpageindex=datagrid1.currentpageindex-1
else
exit do
end if
loop
datagrid1.datasource=dt
datagrid1.databind()
cnn.close()
End Sub
Sub Grid1_Update(Sender as object,E as DataGridCommandEventArgs)
dim NameStr as String=CType(E.Item.Cells(1).Controls(0),TextBox).Text
dim memoStr As string=CType(E.Item.Cells(3).Controls(0),TextBox).Text
dim CodeStr as String=E.Item.Cells(0).Text
dim typestr as string=E.Item.Cells(4).text
dim sql as string
cnn=new sqlconnection(configurationsettings.appsettings("connection"))
cnn.open()
sql="update fw_para set name='" & namestr & "',memo='" & memostr & "' where code='" & codestr & "' and type='" & typestr & "'"
cmd=new sqlcommand(sql,cnn)
cmd.executeNonQuery
cnn.close()
DataGrid1.EditItemIndex=-1
BindGrid()
Requiredfieldvalidator1.Enabled=True
Requiredfieldvalidator2.Enabled=True
End Sub
Sub Grid1_Cancel(Sender as object,E as DataGridCommandEventArgs)
Requiredfieldvalidator1.Enabled=True
Requiredfieldvalidator2.Enabled=True
datagrid1.EditItemIndex=-1
BindGrid()
End Sub
Sub Grid1_Edit(Sender as object,E as DataGridCommandEventArgs)
Requiredfieldvalidator1.Enabled=False
Requiredfieldvalidator2.Enabled=False
DataGrid1.EditItemIndex=E.Item.ItemIndex
BindGrid()
End Sub
Sub ChangeType(sender As Object, e As EventArgs)
dim typestr as string=seltype.selecteditem.value
dim sql as string
dim dataR as sqldatareader
cnn=new sqlconnection(configurationsettings.appsettings("connection"))
cnn.open()
sql="select * from fw_para where typecode='" & typestr & "'"
cmd=new sqlcommand(sql,cnn)
datar=cmd.executereader()
if datar.read() then
disp.text="[" & datar("memo").tostring & "]"
else
disp.text=""
end if
datar.close
cnn.close
bindgrid()
End Sub
Sub Grid1_Mod(Sender as object,E as DataGridCommandEventArgs)
dim CodeStr as String=E.Item.Cells(0).Text
dim typestr as string=E.Item.Cells(4).text
dim sql as string
if CType(e.CommandSource,LinkButton).CommandName="Delete" then
cnn=new sqlconnection(configurationsettings.appsettings("connection"))
cnn.open()
sql="delete from fw_para where code='" & codestr & "' and type='" & trim(typestr) & "'"
cmd=new sqlcommand(sql,cnn)
cmd.executeNonQuery
cnn.close()
bindgrid()
end if
End Sub
Sub Grid1_PageIndexChanged(Sender As Object, E As DataGridPageChangedEventArgs)
datagrid1.CurrentPageIndex = e.NewPageIndex
BindGrid()
End Sub
Function GetAlertInfo(byval str1 as string) as String
dim Str2 as String
str2="<script language='javascript'>alert('" & str1 & "')<"
str2+="/"
str2+="script>"
return trim(str2)
End Function
</script>
<html>
<head>
<title>参数设置</title>
<link href="../Main.css" type="text/css" rel="stylesheet" />
<script language="javascript">
function openwin(src)
{
var vDialog=null;
vDialog=showModalDialog(src,window,"status:no;resizable:off;dialogHeight:500px;dialogWidth:750px;unadorne:yes;help:no");
location.reload();
}
</script>
</head>
<body leftmargin="0" background="../images/1.jpg">
<form runat="server">
<table id="search" cellspacing="1" cellpadding="0" width="80%" align="center" border="0">
<tbody>
<tr class="tr4">
<td height="60" width="40%">
参数类别
<asp:DropDownList class="input_text" id="Seltype" runat="server" width="140" OnSelectedIndexChanged="ChangeType" autopostback="true"></asp:DropDownList>
</td>
<td>
<asp:label id="disp" forecolor="Blue" runat="server"></asp:label>
</td>
</tr>
<tr class="tr4">
<td height="40">
代 码
<asp:TextBox class="input_text" id="code" runat="server" width="140"></asp:TextBox>
</td>
<td>
名 称
<asp:TextBox class="input_text" id="name" runat="server" width="250"></asp:TextBox>
</td>
</tr>
<tr class="tr4">
<td colspan="2" height="40">
备 注
<asp:TextBox class="input_text" id="memo" runat="server" width="520"></asp:TextBox>
</td>
</tr>
</tbody>
</table>
<p align=center>
<asp:button class="input_button" id="SaveBtn" onclick="Save_Click" runat="server" text="保 存"></asp:button><br>
<asp:RequiredFieldValidator id="Requiredfieldvalidator1" runat="server" ErrorMessage="*" ControlToValidate="code">代码不可为空</asp:RequiredFieldValidator>
<asp:RequiredFieldValidator id="Requiredfieldvalidator2" runat="server" ErrorMessage="*" ControlToValidate="name">名称不可为空</asp:RequiredFieldValidator>
</p>
<table class="" id="search" cellspacing="1" cellpadding="0" width="80%" align="center" border="0">
<tbody>
<tr class="tr2">
<td><hr></td>
</tr>
<tr class="tr2">
<td style="PADDING-LEFT: 5px" height="25">
<asp:Label id="Msg" runat="server" forecolor="red"></asp:Label></td>
</tr>
<tr>
<td style="PADDING-LEFT: 5px" height="25">
<asp:DataGrid id="DataGrid1" runat="server" width="100%" OnPageIndexChanged="Grid1_PageIndexChanged" AllowSorting="True" AllowPaging="True" Font-Names="verdana" bordercolor="Black" cellpadding="2" font-name="verdana" font-size="8pt" headerstyle-backcolor="#F8FAFC" OnEditCommand="Grid1_Edit" OnCancelCommand="Grid1_Cancel" OnupdateCommand="Grid1_Update" OnItemCommand="Grid1_Mod" AutoGenerateColumns="False" PageSize="10">
<HeaderStyle font-bold="True" horizontalalign="Center" verticalalign="Middle" backcolor="#F8FAFC"></HeaderStyle>
<PagerStyle nextpagetext="下一页" font-names="宋体" font-bold="True" prevpagetext="上一页" horizontalalign="Right" forecolor="Blue" mode="NumericPages"></PagerStyle>
<EditItemStyle backcolor="#E9F0F8"></EditItemStyle>
<Columns>
<asp:BoundColumn DataField="Code" ReadOnly="True" HeaderText="代 码"></asp:BoundColumn>
<asp:BoundColumn DataField="Name" HeaderText="名 称"></asp:BoundColumn>
<asp:BoundColumn DataField="type" readonly="true" HeaderText="类 别"></asp:BoundColumn>
<asp:BoundColumn DataField="memo" HeaderText="备 注"></asp:BoundColumn>
<asp:BoundColumn DataField="typename" visible="false" readonly="true" HeaderText="所属类别"></asp:BoundColumn>
<asp:EditCommandColumn ButtonType="LinkButton" UpdateText="更新" HeaderText="编辑" CancelText="取消" EditText="编辑"></asp:EditCommandColumn>
<asp:ButtonColumn Text="删除" HeaderText="删除" CommandName="Delete"></asp:ButtonColumn>
</Columns>
</asp:DataGrid>
</td>
</tr>
</tbody>
</table>
</form>
</body>
</html>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?