当前位置:  编程技术>.net/c#/asp.net
本页文章导读:
    ▪SQLServer 在Visual Studio的2种连接方法       一、Sql Server 在Visual Studio的连接有两种方法:(1)本地计算机连接; 代码如下:string s = "Data Source=计算机名称;initial Catalog=数据库名称;integrated Security=True";  (2)windows身份验证方式连接; 代码.........
    ▪GridView使用CommandField删除列实现删除时提示确认框       GridView在使用CommandField删除时弹出提示框,在.net2005提供的GridView中我们可以直接添加一个CommandField删除列:<asp:CommandField ShowDeleteButton="True" />,完后在它的RowDeleting事件中完成删除。但.........
    ▪DataGrid中实现超链接的3种方法       1.使用DataGrid中的超链接列—HyperLinkColumn 相信很多人都使用过datagrid中的超链接列,它很好用,默认情况下只能传递一个参数,如下所示: 代码如下:<asp:HyperLinkColumn DataTextField="CompanyName" Data.........

[1]SQLServer 在Visual Studio的2种连接方法
    来源: 互联网  发布时间: 2013-11-30
一、Sql Server 在Visual Studio的连接有两种方法:
(1)本地计算机连接;
代码如下:

string s = "Data Source=计算机名称;initial Catalog=数据库名称;integrated Security=True"; 

(2)windows身份验证方式连接;
代码如下:

string cc="Data Source = 计算机名称; Initial Catalog = 数据库名称; User ID = sa; Password = 你的密码"; 

二、在Visual Studio中使用:
例1:查询数据库中的数据并且显示出来
代码如下:

string s = "Data Source=计算机名称;Initial Catalog=数据库名称;Integrated Security=True";  //此处使用本地计算机连接方式 
SqlConnection conn = new SqlConnection(s);   //创建连接 
conn.Open();    //打开连接 
SqlCommand cmd = conn.CreateCommand(); 
cmd.CommandText = "select * from T_User";   //使用命令 
SqlDataAdapter adapter=new SqlDataAdapter(cmd); 
DataTable dt=new DataTable(); 
adapter.Fill(dt); 
conn.Dispose();  //释放所以资源 
cmd.Dispose(); 
conn.Close();  //关闭连接 
string realname=""; 
string username=""; 
string mobile=""; 
string address=""; 
for (int i=0;i<dt.Rows.Count;i++) 

    realname=dt.Rows[i][3].ToString(); 
    username=dt.Rows[i][1].ToString(); 
    mobile=dt.Rows[i][4].ToString(); 
    address=dt.Rows[i][5].ToString(); 
    Console.WriteLine("姓名为{0},用户名为{1},手机为{2},地址为{3}", realname, username, mobile, address); 

Console.ReadKey(); 

例2:删除表中数据
代码如下:

string cc="Data Source = 计算机名称; Initial Catalog = 数据库名称; User ID = sa; Password = 你的密码";   //使用windows身份验证 
SqlConnection conn = new SqlConnection(s); 
conn.Open(); 
SqlCommand cmd = conn.CreateCommand(); 
cmd.CommandText = "delete from T_User where Id=5"; 
cmd.ExecuteNonQuery(); 
cmd.Dispose(); 
conn.Close(); 
Console.WriteLine("删除成功"); 
Console.ReadKey(); 

例3:修改表中数据
代码如下:

string s = "Data Source=计算机名称;initial Catalog=数据库名称;integrated Security=True"; 
SqlConnection conn = new SqlConnection(s); 
conn.Open(); 
SqlCommand cmd = conn.CreateCommand(); 
cmd.CommandText = "update T_User set Card=@card where ID=3"; 
cmd.Parameters.AddWithValue("@card", "13000000000000"); 
cmd.ExecuteNonQuery(); 
cmd.Dispose(); 
conn.Close(); 
conn.Dispose(); 
Console.WriteLine("修改成功!"); 
Console.ReadKey(); 

例4:向表中插入数据
代码如下:

string s = "data source=计算机名称;initial catalog=数据库名称;integrated security=true"; 
SqlConnection conn = new SqlConnection(s); 
conn.Open(); 
SqlCommand cmd = conn.CreateCommand(); 
cmd.CommandText = "insert into T_User(UserName,Password,RealName,Mobile,Address) values(@username,@password,@realname,@mobile,@address)"; 
cmd.Parameters.AddWithValue("@username", "xingxing"); 
cmd.Parameters.AddWithValue("@password", "77777"); 
cmd.Parameters.AddWithValue("@realname", "星星"); 
cmd.Parameters.AddWithValue("@mobile", 1300000000); 
cmd.Parameters.AddWithValue("@address", "河北省北京市"); 
cmd.ExecuteNonQuery(); 
cmd.Dispose(); 
conn.Close(); 
conn.Dispose(); 
Console.WriteLine("成功插入一行"); 
Console.ReadKey();

    
[2]GridView使用CommandField删除列实现删除时提示确认框
    来源: 互联网  发布时间: 2013-11-30
GridView在使用CommandField删除时弹出提示框,在.net2005提供的GridView中我们可以直接添加一个CommandField删除列:<asp:CommandField ShowDeleteButton="True" />,完后在它的RowDeleting事件中完成删除。但在多半我们在做这种删除操作时都需要先让操作者再确认下,完后再进行删除,以避免误操作引起的误删除。

可以通过下面方法给GridView删除前加上个确认对话框。

首先,在GridView的属性对框话框中点击“Columns”进入它的“字段”设计器。接着在“字段”设计器中选择以前已加上的那个CommandField“删除”列,这时在它的属性列表下会看到一个“将此它段转换为 TemplateFied”的项,点击将它转换为TemplateFied列。

完后退出该字段设计器,切换到源码视图你会发现该列已由原来的:<asp:CommandField ShowDeleteButton="True" />
变为了:
代码如下:

<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="False" CommandName="Delete" Text="删除"></asp:LinkButton>
</ItemTemplate>

最后在<asp:LinkButton>中加入:OnClientClick="return confirm('确认要删除吗?');"

这样点击删除时就会先在客户端弹出“确认要删除吗?”对话框,而原来在RowDeleting事件中写的代码完全不用改变。

第二种方法:

实现方法:

双击GridView的OnRowDataBound事件;

在后台的GridView1_RowDataBound()方法添加代码,最后代码如下所示:
代码如下:


protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
//如果是绑定数据行
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
{
((LinkButton)e.Row.Cells[6].Controls[0]).Attributes.Add("onclick", "javascript:return confirm('你确认要删除:\"" + e.Row.Cells[1].Text + "\"吗?')");
}
}

}

以上是两种最常见的完善GridView中的删除控件的方法,这两种方法还没有实现对特定数据的绑定作用。

    
[3]DataGrid中实现超链接的3种方法
    来源: 互联网  发布时间: 2013-11-30

1.使用DataGrid中的超链接列—HyperLinkColumn

相信很多人都使用过datagrid中的超链接列,它很好用,默认情况下只能传递一个参数,如下所示:

代码如下:

<asp:HyperLinkColumn DataTextField="CompanyName" DataNavigateUrlField="CustomerID"     DataNavigateUrlFormatString="Default2.aspx?customerid={0}"  eaderText="link">
</asp:HyperLinkColumn>

从上可以看出,传递一个参数的超链接是很容易做到的。那么传递多个参数该如何做?

2.在DataGrid的ItemDataBound事件中对超链接列赋值

假设有一个id为DataGrid1的Datagrid,第一列为超链接列(下标为0),那么它的ItemDataBound事件可写成下面形式。

代码如下:

private void DataGrid1_ItemDataBound(object sender,System.Web.UI.WebControls.DataGridItemEventArgs   e) 
  { 
      if(e.Item.ItemType==ListItemType.Pager||e.Item.ItemType==ListItemType.Header||e.Item.ItemType==ListItemType.Footer)
     {
        return;  //判断是否为页眉,页脚
     }
     else
     {
        HyperLink link=( HyperLink)e.Item.Cells[0].Controls[0];//这里也可以用findcontrol
        link.NavigateUrl="webform3.aspx?id=XXX & name=XXX";
//如果跟某列有关,则可写为    
       // link.NavigateUrl="webform3.aspx?id=”+e.Item.Cells[列号].text;
      }
}

    如果想在模版列使用超链接,可以在该列模版设为LinkButton,可以多个LinkButton在一起,不过id不能相同。我们仍假定该列位是第一列,此时,为其中某个LinkButton定义链接可以如下,把语句

代码如下:

 HyperLink link=( HyperLink)e.Item.Cells[0].Controls[0];

替换成

代码如下:

     LinkButton link=( LinkButton)e.Item.Cells[0]. FindControl(“LinkButton的id”);
     link.Attributes["onclick"] = "<script>location.href='/blog_article/XXX.html';</script>";

当该列只有一个控件即一个LinkButton时,可以用如下语句来实现:

代码如下:

e.Item.Cells[0].Attributes["onclick"] = "<script>location.href='/blog_article/XXX.html';</script>";

这样就省去查找控件的时间。

    上面实际我们已经说到两种方法,一种利用HyperLinkColumn列在ItemDataBound事件里添加NavigateUrl,另一种是在ItemDataBound事件中使用javascript定义click事件,后者比较灵活,只需控件有click事件即可。

3.使用HTML超链接标记

代码如下:

<asp:TemplateColumn>
  <ItemTemplate>
   <a href="/blog_article/Default/id/.html'<%#(String)DataBinder.Eval(Container.DataItem,"CustomerID")%>'
                         &name='<%#(String)DataBinder.Eval(Container.DataItem,"CompanyName")%>'">操作</a>
  </ItemTemplate>
</asp:TemplateColumn>

    它功能就是点击时转到Default.aspx,同时传递参数id和name,这里两个参数都是通过数据绑定动态生成。这种方法在VS2005中是成功的,但是在VS2003中却报错。

    还有一种方法很巧妙,它同样实现第三种方法的功能:假设第二列做为超链接,aspx页面代码:

代码如下:

<asp:boundcolumn   DataField="ID"   Visible=False></asp:boundcolumn>  //第一列
<asp:boundcolumn   DataField="名称"></asp:boundcolumn>//第二列

   ItemDataBound事件如下:

代码如下:

public   void   DataGrid1_ItemDataBound(object sender,DataGridItemEventArgs e) 
{          
       if(e.Item.ItemType==ListItemType.Pager||e.Item.ItemType==ListItemType.Header||e.Item.ItemType==ListItemType.Footer)
       {
          return;//判断是否为页眉,页脚
       }
      else
       {
          e.Item.Cells[1].Text="<a href=/blog_article/News/ID/.html"+e.Item.Cells[0].Text+">"+e.Item.Cells[1].Text+"</a>";//这里可以改成你需要的; 
       }     
}

    
最新技术文章:
▪C#通过IComparable实现ListT.sort()排序
▪C#实现对Json字符串处理实例
▪Winform实现抓取web页面内容的方法
▪Winform实现将网页生成图片的方法
▪C#控制台程序中处理2个关闭事件的代码实例
▪WinForm实现同时让两个窗体有激活效果的特效...
▪WinForm实现拦截窗体上各个部位的点击特效实...
▪用C#的params关键字实现方法形参个数可变示例
▪C#判断某程序是否运行的方法
▪C#验证码识别基础方法实例分析
▪C#通过WIN32 API实现嵌入程序窗体
▪C#实现获取鼠标句柄的方法
▪C#事件处理和委托event delegate实例简述
▪C#获取程序文件相关信息的方法
▪C#中的除法运算符与VB.NET中的除法运算符
▪ASP.NET MVC 5使用X.PagedList.Mvc进行分页教程(PagedLi...
▪Base64编码解码原理及C#编程实例
▪C#实现的优酷真实视频地址解析功能(2014新算...
▪C#和SQL实现的字符串相似度计算代码分享
▪C#使用Word中的内置对话框实例
▪C#反射之基础应用实例总结
▪C#生成单页静态页简单实例
▪C#实现SMTP邮件发送程序实例
▪C#实现随鼠标移动窗体实例
▪C#使用GDI+创建缩略图实例
▪C#实现通过模板自动创建Word文档的方法
▪C#中Response.Write常见问题汇总
▪C#中多态、重载、重写区别分析
▪WinFrom中label背景透明的实现方法
▪C#中out保留字用法实例分析
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3