【办公采购系统】系统中遇到的问题(二)——GridView

前言

      接上文,【办公采购系统】系统中遇到的问题汇总(一),已经对一部分知识进行了总结,下面对剩下的问题分析。

Problems

3、GridView

可以说这个控件真是宝贝。非常以及及其的实用。

这里写图片描述

                                                图 3-1  GridView

GridView控件也有绑定数据的功能,也可以分为三种,基本和上一篇博客中的DropDownList控件一样,这里就不做介绍了。

下面小编对他的一下更多的功能展示给大家。

这个基本就是GridView的界面,它有一个小三角,点开就可以看到他的很多的功能,一个一个给大家介绍。

这里写图片描述

                                                图 3-2  GridView

第一个,自动套用格式

这个功能不用多说,一看便懂。

这里写图片描述

                                                图 3-3  自动套用格式

第二个,选择数据源

这个功能基本同于前一篇博客的,【办公采购系统】系统中遇到的问题汇总(一),功能还是很好的,欢迎大家来访。

第三个,编辑列

清楚明白,就是编辑表格的列。

这里写图片描述

                                                图 3-4  自动套用格式

从上一张图中看到了有这么多的可选字段,而且还是英语的,下面就为大家一次介绍。

这里写图片描述

                                                图 3-5  自动套用格式

从上面的表格中可以清楚明白的了解各个字段的类型,也有各个的作用。一般从后台传来的泛型或者DateTable就可以用BoundField绑定,下面为大家展示:

这里写图片描述

                                                图 3-6  设置字段标头文本

这里还是有一些要强调的,就是要去掉“自动生成字段”,如果不去掉就会形成下图的样式。

这里写图片描述

                                                图 3-7  设置字段标头文本

第四个,GridView选中,编辑,取消,删除

在页面中拖入一个GridView控件;把鼠标移到此控件上,会看到在此控件的右上角有一个小三角,点击此三角,选择编辑列,在弹出的对话框中,找到CommandField,展开它,然后会看到要操作那一列,选择它并点添加,然后取消勾选自动生成字段;

这里写图片描述

                                                图 3-8  选中,编辑,取消,删除

后台代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;

namespace test
{
    public partial class GridViewTest : System.Web.UI.Page
    {

        //建立数据连接字符串
        SqlConnection cnn = new SqlConnection("server=.;uid=sa;pwd=123456;database=Login");

        #region 页面加载
        /// <summary>
        /// 页面加载
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Page_Load(object sender, EventArgs e)
        {


            GridView1.DataSource = bind();
            GridView1.DataBind();
        }
        #endregion

        #region 分页页面改变--重新绑定数据源
        /// <summary>
        /// 分页页面改变--重新绑定数据源
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
        {
            bind();
        }
        #endregion 

        #region 删除
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            string sqlstr = "delete from 表 where id='" + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'";

            SqlCommand sqlcom = new SqlCommand(sqlstr, cnn);
            cnn.Open();
            sqlcom.ExecuteNonQuery();
            cnn.Close();
            bind();
        }
        #endregion 

        #region 修改
        /// <summary>
        /// 修改
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
        {
            GridView1.EditIndex = e.NewEditIndex;
            bind();
        }
        #endregion 

        #region 更新
        /// <summary>
        /// 更新
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
        {

            string sqlstr = "update 表 set 字段1='"
                + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).Text.ToString().Trim() + "',字段2='"
                + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).Text.ToString().Trim() + "',字段3='"
                + ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).Text.ToString().Trim() + "' where id='"
                + GridView1.DataKeys[e.RowIndex].Value.ToString() + "'";
            SqlCommand sqlcom = new SqlCommand(sqlstr, cnn);
            cnn.Open();
            sqlcom.ExecuteNonQuery();
            cnn.Close();
            GridView1.EditIndex = -1;
            bind();
        }
        #endregion

        #region 绑定数据
        /// <summary>
        /// 绑定数据
        /// </summary>
        /// <returns></returns>
        public DataSet bind()
        {

            string SQL = "select * from USERS";
            SqlCommand cmd = new SqlCommand(SQL, cnn);
            cnn.Open();
            DataSet ds = new DataSet();
            SqlDataAdapter da = new SqlDataAdapter(SQL, cnn);
            da.Fill(ds);
            cnn.Close();
            return ds;
        }
        #endregion 
    }
}

前台代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="GridViewTest.aspx.cs" Inherits="test.GridViewTest" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:GridView ID="GridView1" runat="server" AllowPaging="True" AutoGenerateColumns="False" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="3"  OnRowDeleting="GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing" OnRowUpdating="GridView1_RowUpdating" OnSelectedIndexChanged="GridView1_SelectedIndexChanged">
            <Columns>
                <asp:TemplateField HeaderText="ID">
                    <EditItemTemplate>
                        <asp:TextBox ID="TextBox4" runat="server" Text='<%# Bind("ID") %>'></asp:TextBox>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label4" runat="server" Text='<%# Bind("ID") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="姓名">
                    <EditItemTemplate>
                        <asp:TextBox ID="TextBox3" runat="server" Text='<%# Bind("UserName") %>'></asp:TextBox>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label3" runat="server" Text='<%# Bind("UserName") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="密码">
                    <EditItemTemplate>
                        <asp:TextBox ID="TextBox2" runat="server" Text='<%# Bind("Password") %>'></asp:TextBox>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label2" runat="server" Text='<%# Bind("Password") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="email">
                    <EditItemTemplate>
                        <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("Email") %>'></asp:TextBox>
                    </EditItemTemplate>
                    <ItemTemplate>
                        <asp:Label ID="Label1" runat="server" Text='<%# Bind("Email") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:CommandField CancelText="" EditText="" HeaderText="操作" InsertText="" NewText="" SelectText="" ShowDeleteButton="True" UpdateText="" />
                <asp:CommandField CancelText="" DeleteText="" HeaderText="操作2" InsertText="" NewText="" SelectText="" ShowEditButton="True" UpdateText="" />
                <asp:CommandField HeaderText="操作3" NewText="插入" ShowInsertButton="True" />
                <asp:CommandField CancelText="" DeleteText="" EditText="" HeaderText="操作4" InsertText="" NewText="" ShowSelectButton="True" UpdateText="" />
            </Columns>
            <FooterStyle BackColor="White" ForeColor="#000066" />
            <HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
            <RowStyle ForeColor="#000066" />
            <SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
            <SortedAscendingCellStyle BackColor="#F1F1F1" />
            <SortedAscendingHeaderStyle BackColor="#007DBB" />
            <SortedDescendingCellStyle BackColor="#CAC9C9" />
            <SortedDescendingHeaderStyle BackColor="#00547E" />
        </asp:GridView>
    </div>
    </form>
</body>
</html>

Summarize

      Gridview控件真是很强大,他还有很多的功能,在学习过程中,我发现了一个博客: C#精髓 第四讲 GridView 72般绝技,这个真的好全,有72个功能!!搞起来吧!!希望对您有帮助!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 12
    评论
以下是一个简单的示例,展示了如何使用C#GridView实现txt文件管理系统: 首先,需要在窗体添加一个GridView控件,并在Form_Load事件设置GridView的列,以显示文件名、大小和日期等信息。例如: ``` private void Form1_Load(object sender, EventArgs e) { // 设置GridView列 dataGridView1.Columns.Add("FileName", "文件名"); dataGridView1.Columns.Add("FileSize", "大小"); dataGridView1.Columns.Add("FileDate", "日期"); } ``` 然后,可以编写一个方法来从指定目录获取txt文件列表并将其添加到GridView。例如: ``` private void LoadFiles(string folderPath) { // 清空GridView dataGridView1.Rows.Clear(); // 获取txt文件列表 string[] files = Directory.GetFiles(folderPath, "*.txt"); // 遍历txt文件列表并将其添加到GridView foreach (string file in files) { FileInfo fileInfo = new FileInfo(file); dataGridView1.Rows.Add(fileInfo.Name, fileInfo.Length, fileInfo.LastWriteTime); } } ``` 最后,可以在控件的事件调用该方法,以便在GridView显示文件列表。例如,在“打开文件夹”按钮的Click事件,可以调用该方法: ``` private void btnOpenFolder_Click(object sender, EventArgs e) { // 显示打开文件夹对话框 FolderBrowserDialog dlg = new FolderBrowserDialog(); if (dlg.ShowDialog() == DialogResult.OK) { // 加载文件列表 LoadFiles(dlg.SelectedPath); } } ``` 当用户点击“打开文件夹”按钮时,将显示“打开文件夹”对话框,用户可以选择txt文件所在的文件夹,然后调用LoadFiles方法以在GridView显示文件列表。 请注意,这只是一个简单的示例,您可能需要根据自己的需求对代码进行修改。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你个佬六

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值