GridView的使用(高度封装,不怎么灵活,repeat可替代)

GridView的使用

首先,gridview是封装好的,直接在设计界面使用,基本不需要写代码;

一、绑定数据源

GridView最好与LinQDatasourse配合使用,相匹配绑定数据;

二、样式控制

1、自动套用样式

点击自动套用格式,样式如下图所示:

2、整体控制和自定义样式:

在它的属性里设置

(1)整体控制

其中width控制表格的宽度,height控制表格的高度

(2)表头样式

在样式-HeaderStyle中,可以控制表头的颜色及高宽度、边框粗细及颜色、对表头字体的相关操作等

(3)行样式

在样式-RowStyle中,可以控制行的颜色及高宽度、边框粗细及颜色、对字体的相关操作等

showfooter:显示脚模板

showheader:显示头模板

AlternatingRowStyle:应用于交替行的样式

三、列控制

控制列名,点击编辑列

1.修改列头

2.修改列

性别不能为单选框,将选定的字段中Sex删掉,在可用字段BoundField中添加Sex

(1)字段扩展

public partial class User
{
   public string SexStr {

        get {
            return _Sex.Value ? "男" : "女";
        }

    }
    public string Nationname {

        get {
            return this.Nation1.NationName;
        }
    }
}

(2)还是在编辑列中,在选用的字段点击要修改的列名,改变DataField,生日这列可在DataFromatString添加{0:yyyy年MM月dd日},在昵称下加上同学方法:在DataFromatString添加{0}同学

四、行控制

把符合条件的行标红:使用RowDataBound事件

 protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        //1如何把这一行数据给取出来

        Users u = e.Row.DataItem as Users;
        if (u != null)
        {
            if (u.Sex == false)
            {
                e.Row.BackColor = System.Drawing.Color.Red;
            }
        }

    }

五、GridView的修改和删除

然后GridView任务就多了以上几项,选定启用删除即实现了删除功能,启用编辑即实现了修改功能,但是编辑对字段扩展的没有用,无法修改。

为使编辑功能编的好用,在编辑列中选择不好用的列,点击“将此字段转换为TemplateField”,然后点击GridView任务中的编辑模板,以性别为例

选择

修改EditItemTemplate,删除其中的文本框,添加RadioButtonList并添加项,然后选择编辑DataBinding,双向绑定,如图所示

民族需选择数据源,然后再选择编辑DataBinding,双向绑定

RowDeleting事件对数据源执行删除命令前激发

另外GridView任务中还能进行排序和分页,在属性中分页PageSize:每页显示的条数

PagerSettings:控制与控件关联的分页UI设置,其中Mode即UI类型,通常选择NextPreviousFirstLast,然后将FristPageText改为首页,LastPageText改为末页,NextPageText改为下一页,previousPageText改为上一页。

时间: 2024-10-13 11:57:38

GridView的使用(高度封装,不怎么灵活,repeat可替代)的相关文章

看看Parallel中高度封装的三个方法,Invoke,For和ForEach

说到.net中的并行编程,也许你的第一反应就是Task,确实Task是一个非常灵活的用于并行编程的一个专用类,不可否认越灵活的东西用起来就越 复杂,高度封装的东西用起来很简单,但是缺失了灵活性,这篇我们就看看这些好用但灵活性不高的几个并行方法. 一:Invoke 现在电子商务的网站都少不了订单的流程,没有订单的话网站也就没有存活的价值了,往往在订单提交成功后,通常会有这两个操作,第一个:发起 信用卡扣款,第二个:发送emial确认单,这两个操作我们就可以在下单接口调用成功后,因为两个方法是互不干

新东西003--android Gridview控制显示高度

一:需求 最近产品决定对公司软件做大修改,他想要实现网易云学习的标签栏效果,如下图(在A区域需要有一系列标签栏(标签栏多少不定,但每行三个,显示时如果超过屏幕2/3就要显示进度条,也就是最大不超过屏幕2/3的显示),B区域是一个listview,中间就是几个button,当B区域往上滑动的时候A区域自动收起,但在最上方显示当前选择的标签,点击标签弹出浮动的标签栏,当B区域滑动到最顶的时候,A区域开始显示.) 在上面的需求上,主要有两个问题 1.上面那一系列不知道多少个的是用button显示还是其

GridView 的item高度很高,快崩溃了

============问题描述============ 主布局中下面是一个gridView,点击后显示另外一个gridView,但是item的布局显示高度不合适,整体丑陋,求指点,谢谢!! 主布局 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"     xmlns:tools="http://schemas.android.com/tools"     andr

GridView中item高度自适应

public class MyAdapter extends BaseAdapter {         GridView mGv;        public static int ROW_NUMBER = 5;     public MyAdapter (GridView gv, Context mContext, ArrayList<String> list) {         this.context = mContext;         this.mGv = gv;       

iOS7之后的文本高度封装

#import "NSString+Util.h" @implementation NSString (Util) +(CGFloat)changeStationWidth:(NSString *)string anWidthTxtt:(CGFloat)widthText anfont:(UIFont *)font{ //高度估计文本大概要显示几行,宽度根据需求自己定义. MAXFLOAT 可以算出具体要多高 CGSize size =CGSizeMake(widthText,MAXF

gridView 表头自适应高度

The Default value assigned to the ColumnHeaderAutoHeight property is equivalent to the False value. You can also use the GridView.ColumnPanelRowHeight propriety to increase the column header panel height that is calculated automatically. Note that th

GridView的高度自适应

接着上面一篇文章. 当GridView不知道parent高度的时候,也就是MeasureSpec是UNSPECIFIED,这个时候,GridView高度为第一个child的高度,并显示滚动条. 1 mItemCount = mAdapter == null ? 0 : mAdapter.getCount(); 2 final int count = mItemCount; 3 if (count > 0) { 4 final View child = obtainView(0, mIsScrap

Lable自适应高度方法的封装

ios7---Lable自适应高度封装 +(UILabel *)getInfoLabel:(UILabel *)label withText:(NSString *)ktext withFont:(CGFloat )kfont withtosize:(CGRect)krect withBackGroundColor:(UIColor *)kbackgroundColor { //内容显示 高度自适应 CGSize sizeToFit =[ktext sizeWithFont:[UIFont sy

android设置GridView高度自适应,实现全屏铺满效果

使GridView每个item的高度自适应拉伸,达到整个GridView刚好铺满全屏的效果. public static void setGridViewMatchParent(GridView gridView ) { // 获取gridView的adapter ListAdapter adapter = gridView.getAdapter(); if (adapter == null) { return; } // 固定列宽,有多少列 int col = 2;// gridView.ge