GridView使用总结

合集下载

详解GridView 使用方法

详解GridView 使用方法

GridView 使用方法总结1.GridView无代码分页排序:1.AllowSorting设为True,aspx代码中是AllowSorting="True";2.默认1页10条,如果要修改每页条数,修改PageSize即可,在aspx代码中是PageSize="12"。

3.默认的是单向排序的,右击GridView弹出“属性”,选择AllowSorting为True即可。

2.GridView选中,编辑,取消,删除:后台代码:你可以使用sqlhelper,本文没用。

代码如下:代码using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Data.SqlClient;public partial class _Default : System.Web.UI.Page{//清清月儿/21aspnetSqlConnection sqlcon;SqlCommand sqlcom;string strCon = "Data Source=(local);Database=数据库名;Uid=帐号;Pwd=密码";protected void Page_Load(object sender, EventArgs e){if (!IsPostBack){bind();}}protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e){GridView1.EditIndex = e.NewEditIndex;bind();}//删除protected void GridView1_RowDeleting(object sender, GridViewDeleteEventA rgs e){string sqlstr = "delete from 表 where id='" + GridView1.DataKeys[e.Ro wIndex].Value.ToString() + "'";sqlcon = new SqlConnection(strCon);sqlcom = new SqlCommand(sqlstr,sqlcon);sqlcon.Open();sqlcom.ExecuteNonQuery();sqlcon.Close();bind();}//更新protected void GridView1_RowUpdating(object sender, GridViewUpdateEventA rgs e){sqlcon = new SqlConnection(strCon);string sqlstr = "update 表 set 字段1='"+ ((TextBox)(GridView1.Rows[e.RowIndex].Cells[1].Controls[0])).T ext.ToString().Trim() + "',字段2='"+ ((TextBox)(GridView1.Rows[e.RowIndex].Cells[2].Controls[0])).T ext.ToString().Trim() + "',字段3='"+ ((TextBox)(GridView1.Rows[e.RowIndex].Cells[3].Controls[0])).T ext.ToString().Trim() + "' where id='"+ GridView1.DataKeys[e.RowIndex].Value.ToString() + "'";sqlcom=new SqlCommand(sqlstr,sqlcon);sqlcon.Open();sqlcom.ExecuteNonQuery();sqlcon.Close();GridView1.EditIndex = -1;bind();}//取消protected void GridView1_RowCancelingEdit(object sender, GridViewCancelE ditEventArgs e){GridView1.EditIndex = -1;bind();}//绑定public void bind(){string sqlstr = "select * from 表";sqlcon = new SqlConnection(strCon);SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);DataSet myds = new DataSet();sqlcon.Open();myda.Fill(myds, "表");GridView1.DataSource = myds;GridView1.DataKeyNames = new string[] { "id" };//主键GridView1.DataBind();sqlcon.Close();}}前台主要代码代码前台主要代码:... ...<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" Cell Padding="4"ForeColor="#333333" GridLines="None" OnRowDeleting=" GridView1_RowDeleting" OnRowEditing="GridView1_RowEditing"OnRowUpdating="GridView1_RowUpdating" OnRowCanceling Edit="GridView1_RowCancelingEdit"><FooterStyle BackColor="#990000" Font-Bold="True" Fo reColor="White"/><Columns><asp:BoundField DataField="身份证号码" HeaderText="用户ID" ReadOnly="True"/><asp:BoundField DataField="姓名" HeaderText="用户姓名"/><asp:BoundField DataField="员工性别" HeaderText="性别"/><asp:BoundField DataField="家庭住址" HeaderText="家庭住址"/><asp:CommandField HeaderText="选择" ShowSelectButton="True"/><asp:CommandField HeaderText="编辑" ShowEditButton="True"/><asp:CommandField HeaderText="删除" ShowDeleteButton="True"/></Columns><RowStyle ForeColor="#000066"/><SelectedRowStyle BackColor="#669999" Font-Bold="Tru e" ForeColor="White"/><PagerStyle BackColor="White" ForeColor="#000066" Ho rizontalAlign="Left"/><HeaderStyle BackColor="#006699" Font-Bold="True" Fo reColor="White"/></asp:GridView>3.GridView正反双向排序:效果图:点姓名各2次的排序,点其他也一样可以。

androidGridView的使用-电脑资料

androidGridView的使用-电脑资料

androidGridView的使用-电脑资料一些属性设置:1.android:numColumns=”auto_fit”//GridView的列数设置为自动2.android:columnWidth=”90dp "//每列的宽度,也就是Item的宽度3.android:stretchMode=”columnWidth"//缩放与列宽大小同步4.android:verticalSpacing=”10dp”//两行之间的边距5.android:horizontalSpacing=”10dp”//两列之间的边距6.android:cacheColorHint="#00000000"//去除拖动时默认的黑色背景7.android:listSelector="#00000000"//去除选中时的黄色底色(若要自定义按下效果,可将之设置为透明色,在设置自己的选择器)8.android:scrollbars="none"//隐藏GridView的滚动条9.android:fadeScrollbars="true"//设置为true就可以实现滚动条的自动隐藏和显示10.android:fastScrollEnabled="true"//GridView出现快速滚动的按钮(至少滚动4页才会显示)11.android:fadingEdge="none"//GridView衰落(褪去)边缘颜色为空,缺省值是vertical,,电脑资料《android GridView的使用》(https://www.)。

(可以理解为上下边缘的提示色)12.android:fadingEdgeLength="10dip"//定义的衰落(褪去)边缘的长度13.android:stackFromBottom="true"//设置为true时,你做好的列表就会显示你列表的最下面14.android:transcriptMode="alwaysScroll"//当你动态添加数据时,列表将自动往下滚动最新的条目可以自动滚动到可视范围内(发现设置后有时候,可以一直往下拉,上面已经没有数据了,还可以拉,奇怪的现象!)15.android:drawSelectorOnTop="false"//点击某条记录不放,颜色会在记录的后面成为背景色,内容的文字可见(缺省为false) ListView 和GridView这一类控件都只能用选择器设置按下的效果,但手一松开,效果不会保持,要想保持可以在做一个按下位置position的标记,设置onItemClick事件中记下position的值,通知数据刷新,在getView中判断是否是你设置的标记,是则设置选中效果,不是都去除选中效果。

关于GridView使用学习总结

关于GridView使用学习总结

GridView使用学习总结关于GridView使用学习总结由于视频比较旧,涉及到的数据绑定控件DataGrid在VS2012中已经没有了,取而代之的是GridView。

开始觉得视频中的例子没法实现了,其实不然,DataGrid里面的功能GridView里一样都不少,只是形式变化了一下,仔细研究一下发现它们是换汤不换药啊。

(一)DataKeyName属性(1)DataKeyNames一般都是用来对当前行做唯一标示的,所以一般为数据库的ID。

(2)GridView.DataKeys[e.RowIndex],e.RowIndex是获取事件对应的行,GridView.DataKeys[e.RowIndex]就是获取对应行的唯一标示也就是DataKeyNames所指定列的值。

(3)DataList和Repeater是没有的该属性的。

在代码中这样使用:(定义的`该函数在下面都需要调用)/// 实现数据绑定功能 ///private void BindToDataGird() { SqlConnection con = DB.CreateCon(); SqlDataAdapter sda = new SqlDataAdapter(); sda.SelectCommand = new SqlCommand("select employeeID,FirstName,LastName,Title,BirthDate from employees ", con); DataSet ds = new DataSet(); sda.Fill(ds, "emp"); //将查询到的数据添加到DataSet中。

this.GridView1.DataKeyNames =new string[]{ "employeeID"}; //DataKeyNames的使用this.GridView1.DataSource = ds.Tables["emp"]; this.DataBind(); }如何取值?DataKey key = GridView1.DataKeys[e.RowIndex];//其中e为GridViewDelete(或者Edit)EventArgs e string empID = key[0].ToString();(二)分页由于GridView中封装了分页的功能。

gridview控件用法介绍

gridview控件用法介绍

ASPxGridView属性:概述设置(Settings)<SettingsGridLines="Vertical" : 网格样式 Vertical, Both, NoneShowGroupPanel="True" : 分组面板ShowFooter="True" : 脚注面板ShowFilterRow="True" : 过滤器行ShowHeaderFilterButton="true" : 表头过滤按钮ShowFilterBar :允许显示过滤工具条ShowGroupFooter="VisibleAlways" : 分组脚注面板 Hidden | VisibleIfExpand | Vis ibleAlwaysShowPreview="true" : 预览面板ShowVerticalScrollBar="True" : 垂直滚动条VerticalScrollableHeight="250" : 垂直滚动条/>行为设置(SettingsBehavior)<SettingsBehaviorAllowDragDrop="False" : 允许托拽ColumnResizeMode="Control" : 列宽度调整模式AllowFocusedRow="True" : 鼠标点击选择行AllowSort :允许排序AllowGroup :允许分组autoExpandAllGroups :自动展开所有组ConfirmDelete :允许提交删除AllowMultiSelection :允许选择多行/>分页(SettingsPager)<SettingsPagerPageSize="30" : 分页大小Mode="ShowAllRecords" : 展示模式SEOFriendly="Enabled" : Search engine friendlyPosition="TopAndBottom" : 分页控件位置><Summary AllPagesText="页: {0} / {1} ({2}行)" /></SettingsPager>文本设置(SettingsText)<SettingsTextTitle="标题"EmptyDataRow="无数据"PopupEditFormCaption="编辑"ConfirmDelete="确定删除?"/>Loading 面板设置(SettingsLoadingPanel)<SettingsLoadingPanel Mode="ShowOnStatusBar" />编辑视图设置(SettingsEditing)<SettingsEditingPopupEditFormWidth = "600px"NewItemRowPosition = "Bottom"Mode = "PopupEditForm"/>编辑模式 SettingsEditing.ModeEditForm : 当前行转化为表单,嵌入在行中EditFormAndDisplayRow : 同EditForm,但保留当前行Inline : 在当前行现场编辑PopupEditForm : 弹出窗口编辑行详细设置(SettingDetail)<SettingDetailAllowOnlyOneMasterRowExpanded :允许只展开一列详细信息ShowDetailRow :允许显示详细列表IsDetailGrid :允许显示分组>动态选中某一行:AspxgridView1.Selection.SetSelection(i.true)遍历所有行:声明变量:DataRowView dvFor(int i=0;i< AspxgridView1.VisbleRowCount;i++){选中行提取数据:if(AspxgridView1.Selection.IsRowSelected(i)){行数据集 dv=(DataRowView)AspxgridView1.GetRow(i);}}ASPxGridView样式& 格式---------------------------------------------------------集中式样式<Styles><Header HorizontalAlign="Center" /> : 标题居中对齐<AlternatingRow Enabled="true"/> : 交错行效果<CommandColumn Paddings-Padding="1" /> :</Styles>列样式<dxwgv:GridViewDataTextColumn FieldName="Total" UnboundType="Decimal"> <FooterCellStyle ForeColor="Brown"/></dxwgv:GridViewDataTextColumn>数字日期格式金额<dxwgv:GridViewDataTextColumn FieldName="UnitPrice" ><PropertiesTextEdit DisplayFormatString="c" /></dxwgv:GridViewDataTextColumn>时间<dxwgv:GridViewDataDateColumn Caption="Time" FieldName="Time"> <PropertiesDateEdit DisplayFormatString="HH:mm:ss" /><CellStyle HorizontalAlign="Right" /></dxwgv:GridViewDataDateColumn>图像<Images ImageFolder="~/App_Themes/Glass/{0}/"><CollapsedButton Height="12px" Width="11px" /><DetailCollapsedButton Height="9px" Width="9px" /><PopupEditFormWindowClose Height="17px" Width="17px" /></Images>ASPxGridView分组& 汇总& 排序---------------------------------------------------------间隔分组:将时间日期字段按个性分组,如年、月、日、周、季度、上周、下周.....<dxwgv:GridViewDataDateColumn FieldName="OrderDate" VisibleIndex="3" GroupInd ex="0"><Settings GroupInterval="DateYear"/></dxwgv:GridViewDataDateColumn>汇总<TotalSummary><dxwgv:ASPxSummaryItem FieldName="CompanyName" SummaryType="Count"/> <dxwgv:ASPxSummaryItem FieldName="Total" SummaryType="Sum" DisplayFormat="c"/><dxwgv:ASPxSummaryItem FieldName="Quantity" SummaryType="Min" /><dxwgv:ASPxSummaryItem FieldName="Quantity" SummaryType="Average" /><dxwgv:ASPxSummaryItem FieldName="Quantity" SummaryType="Max" /> </TotalSummary>分组汇总<GroupSummary><dxwgv:ASPxSummaryItem FieldName="Country" SummaryType="Count" /><dxwgv:ASPxSummaryItem FieldName="Quantity" SummaryType="Sum" /><dxwgv:ASPxSummaryItem FieldName="Total" SummaryType="Sum" DisplayFor mat="{0:c}"/></GroupSummary>ASPxGridView 列:---------------------------------------------------------基本列(GridViewDataColumn)<dxwgv:GridViewDataColumn FieldName="Country" VisibleIndex="5" />其他列<dx:GridViewDataTextColumn /> : 文本列<dx:GridViewDataMemoColumn /> : 长文本列<dx:GridViewDataImageColumn /> : 图像列<dx:GridViewDataBinaryImageColumn /> : 二进制图像列<dx:GridViewDataDateColumn /> : 日期列<dx:GridViewDataTimeEditColumn /> : 时间列<dx:GridViewDataComboBoxColumn /> : 组合框列<dx:GridViewDataDropDownEditColumn /> : 下拉框编辑列?<dx:GridViewCommandColumn /> : 命令按钮列<dx:GridViewDataButtonEditColumn /> : 编辑按钮列?<dx:GridViewDataCheckColumn /> : 复选框列<dx:GridViewDataColorEditColumn /> : 色彩列<dx:GridViewDataHyperLinkColumn /> : 超链接列<dx:GridViewDataProgressBarColumn /> : 进度条列<dx:GridViewDataSpinEditColumn /> : SpinEdit列长文本列(GridViewDataMemoColumn)编辑时展现为多行文本框<dx:GridViewDataMemoColumn FieldName="Remarks" Caption="备注"EditCellStyle-BackColor="Yellow" // 行的背景颜色PropertiesMemoEdit-Rows="4" // 添加或是修改时跨行EditFormSettings-ColumnSpan="2" //添加或是修改时跨列/>超链接列(GridViewDataHyperLinkColumn)<dx:GridViewDataHyperLinkColumn FieldName="ArticleId" Caption="查看" > <PropertiesHyperLinkEdit Text="查看" TextFormatString="" /> </dx:GridViewDataHyperLinkColumn>组合框列(GridViewDataComboBoxColumn)<dx:ASPxGridView OnCellEditorInitialize="grid_CellEditorInitialize"><dxwgv:GridViewDataComboBoxColumn FieldName="City" VisibleIndex="2"> <PropertiesComboBox EnableSynchronization="False" EnableIncrementalFiltering ="True" DropDownStyle="DropDown" /></dxwgv:GridViewDataComboBoxColumn></dx:ASPxGridView>protected void grid_CellEditorInitialize(object sender, ASPxGridViewEditorEventArgs e){// 用下拉框展示国家下的所有城市绑定数据源if(grid.IsEditing && e.Column.FieldName != "City" && !grid.IsNewRowEditing){ASPxComboBox combo = e.Editor as ASPxComboBox;string country = (string)grid.GetRowValuesByKeyValue(e.KeyValue, "Country");FillCityCombo(combo, country);}}命令按钮列(GridViewCommandColumn)<dx:ASPxGridView runat="server" KeyFieldName="ID"OnRowDeleting="gv_RowDeleting" OnRowUpdating="gv_RowUpdating" OnRowIn serting="gv_RowInserting"<Columns>一种是添加图片的<dx:GridViewCommandColumn VisibleIndex="0" ButtonType="Image" Caption=操作"><EditButton Visible="True"><Image ToolTip="修改" Url="Images/edit.png" /></EditButton><NewButton Visible="True"><Image ToolTip="新建" Url="Images/new.png" /></NewButton><DeleteButton Visible="true"><Image ToolTip="删除" Url="Images/del.png" /></DeleteButton><CancelButton Visible="True"><Image ToolTip="关闭" Url="Images/cancel.png" /></CancelButton><UpdateButton Visible="True"><Image ToolTip="保存" Url="Images/update.png" /></UpdateButton><ClearFilterButton Visible="true"><Image ToolTip="清空" Url="Images/del2.png" /></ClearFilterButton><HeaderStyle HorizontalAlign="Center" /></dx:GridViewCommandColumn>一种就只这种标准的:<dxwgv:GridViewCommandColumn><EditButton Visible="True" Text="修改" /><DeleteButton Visible="true" Text="删除" /><NewButton Visible="True" Text="新建" /><CancelButton Visible="true" Text="取消" /><UpdateButton Visible="true" Text="保存" /><ClearFilterButton Visible="true" Text="取消过滤" /></dxwgv:GridViewCommandColumn></Columns></dx:ASPxGridView>代码详见《ASPxGridView.DataBind》复选框列<dxwgv:GridViewCommandColumn ShowSelectCheckbox="True"/><dxwgv:GridViewCommandColumn ShowSelectCheckbox="True"><HeaderTemplate><input type="checkbox" onclick="grid.SelectAllRowsOnPage(this.checked);" t itle="选择/放弃选择本页的所有行" /></HeaderTemplate><HeaderStyle HorizontalAlign="Center" /></dxwgv:GridViewCommandColumn>自定义按钮“删除”按钮<dx:GridViewCommandColumn Caption="删除"><CustomButtons><dx:GridViewCommandColumnCustomButton ID="DeleteFile" Text="删除" /> </CustomButtons></dx:GridViewCommandColumn>protected void gv_CustomButtonCallback(object sender, ASPxGridViewCustomBu ttonCallbackEventArgs e){if (e.ButtonID == "DeleteFile"){long fileId = Convert.ToInt64(gv.GetRowValues(e.VisibleIndex, "FileId"));string fileName = gv.GetRowValues(e.VisibleIndex, "FileName").ToString();string filePath = Common.Config.Path.PhysicalUploadFolder + gv.GetRowV alues(e.VisibleIndex, "FilePath").ToString();System.IO.File.Delete(filePath);using (DbFile db = new DbFile())db.DelFile(fileId);ShowData(this.FileBatchId);}}“复制行”按钮<dx:ASPxGridView runat="server" OnCustomButtonCallback="grid_CustomButto nCallback"><Columns><dxwgv:GridViewCommandColumn VisibleIndex="0"><CustomButtons><dxwgv:GridViewCommandColumnCustomButton Text="复制行" ID=" Copy" /></CustomButtons></dxwgv:GridViewCommandColumn></Columns></dx:ASPxGridView>Hashtable copiedValues;protected void grid_CustomButtonCallback(object sender, ASPxGridViewCustomB uttonCallbackEventArgs e){if(e.ButtonID == "Copy"){copiedValues = new Hashtable();foreach(string fieldName in copiedFields)copiedValues[fieldName] = grid.GetRowValues(e.VisibleIndex, fieldNam e);grid.AddNewRow();}}protected void grid_InitNewRow(object sender, DevExpress.Web.Data.ASPxDataI nitNewRowEventArgs e){if(copiedValues != null)foreach(string fieldName in copiedFields)e.NewValues[fieldName] = copiedValues[fieldName];}非绑定列(GridViewDataTextColumn)<dxwgv:GridViewDataTextColumn FieldName="Total" UnboundType="Decimal" /> protected void grid_CustomUnboundColumnData(object sender, DevExpress.Web.ASP xGridView.ASPxGridViewColumnDataEventArgs e){// Total = UnitPrice * Quantityif(e.Column.FieldName == "Total"){decimal price = (decimal)e.GetListSourceFieldValue("UnitPrice");int quantity = Convert.ToInt32(e.GetListSourceFieldValue("Quantity"));e.Value = price * quantity;}}模板列(GridViewDataTextColumn)onhtmlrowcreated="grid_HtmlRowCreated"<dxwgv:GridViewDataTextColumn Name="Percent" Caption="Change" FieldName="Ch ange"><DataItemTemplate><asp:Image ID="changeImage" runat="server" ImageUrl="~/Images/arGreen.gi f" Visible="false" GenerateEmptyAlternateText="True" /><asp:Label ID="changePercent" runat="server" Text="" /><a href="javascript:void(0);" onclick="OnMoreInfoClick(this, '<%# Container.Ke yValue %>')">更多...</a><a href="../pages/download.ashx?path=../uploads/<%#Eval("FilePath")%>&na me=<%#Eval("FileName") %> " >下载</a></DataItemTemplate></dxwgv:GridViewDataTextColumn>protected void grid_HtmlRowCreated(object sender, ASPxGridViewTableRowEventArgs e){if (!grid.IsEditing && e.RowType == DevExpress.Web.ASPxGridView.GridViewRowT ype.Data){// 操作Label 控件Label label = grid.FindRowCellTemplateControl(e.VisibleIndex, null, "changePerc ent") as Label;decimal change = (decimal)grid.GetRowValues(e.VisibleIndex, "Change");label.Text = string.Format("{0:p}", change);// 操作Image 控件System.Web.UI.WebControls.Image img = (System.Web.UI.WebControls.Image) grid.FindRowCellTemplateControl(e.VisibleIndex, null, "changeImage");img.Visible = false;if(change != 0){img.Visible = true;img.ImageUrl = change < 0 ? "~/Images/arRed.gif" : "~/Images/arGreen.gif ";label.ForeColor = change < 0 ? Color.Red : Color.Green;}}}注:模板列中的事件如何写?手工写事件,如btn.OnClick += ...;注:视图模板请参考文档《ASPxGridView.Templates》ASPxGridView 事件RowCreated(创建行数据时触发,类似GridView 的DataItemCreate 事件)protected void grid_HtmlRowCreated(object sender, DevExpress.Web.ASPxGridView.A SPxGridViewTableRowEventArgs e){if(e.RowType != DevExpress.Web.ASPxGridView.GridViewRowType.Data) return;// 设置模板列lable控件值Label label = grid.FindRowCellTemplateControl(e.VisibleIndex, null, "changePercent ") as Label;decimal change = (decimal)grid.GetRowValues(e.VisibleIndex, "Change");label.Text = string.Format("{0:p}", change);// 设置模板列image控件的图像System.Web.UI.WebControls.Image img = (System.Web.UI.WebControls.Image)gri d.FindRowCellTemplateControl(e.VisibleIndex, null, "changeImage");img.Visible = false;if(change != 0) {img.Visible = true;img.ImageUrl = change < 0 ? "~/Images/arRed.gif" : "~/Images/arGreen.gif";label.ForeColor = change < 0 ? Color.Red : Color.Green;}}HtmlRowPrepared(行准备?可在此设置行的展示效果,如背景)protected void grid_HtmlRowPrepared(object sender, ASPxGridViewTableRowEventArg s e){bool hasError = e.GetValue("FirstName").ToString().Length <= 1;hasError = hasError || e.GetValue("LastName").ToString().Length <= 1;hasError = hasError || !e.GetValue("Email").ToString().Contains("@");hasError = hasError || (int)e.GetValue("Age") < 18;DateTime arrival = (DateTime)e.GetValue("ArrivalDate");hasError = hasError || DateTime.Today.Year != arrival.Year || DateTime.Today.Mo nth != arrival.Month;if(hasError) {e.Row.ForeColor = System.Drawing.Color.Red;}}UnboundColumnData (非绑定列数据填充)protected void grid_CustomUnboundColumnData(object sender, DevExpress.Web.ASP xGridView.ASPxGridViewColumnDataEventArgs e){if(e.Column.FieldName == "Total"){decimal price = (decimal)e.GetListSourceFieldValue("UnitPrice");int quantity = Convert.ToInt32(e.GetListSourceFieldValue("Quantity"));e.Value = price * quantity;}}CustomColumnDisplayText(定制列文本展示)protected void grid_CustomColumnDisplayText(object sender, DevExpress.Web.ASPx GridView.ASPxGridViewColumnDisplayTextEventArgs e){if(object.Equals(e.Column, grid.Columns["Size"]))e.DisplayText = GetSizeDisplayText(e.Value);}SummaryDisplayText(合计行文本展示)protected void grid_SummaryDisplayText(object sender, DevExpress.Web.ASPxGridVi ew.ASPxGridViewSummaryDisplayTextEventArgs e) {if(e.Item.FieldName == "Size") {e.Text = GetSizeDisplayText(e.Value);}}HeaderFilterFillItems(自定义过滤器处理逻辑)protected void grid_HeaderFilterFillItems(object sender, ASPxGridViewHeaderFilterEve ntArgs e){if(object.Equals(e.Column, grid.Columns["Total"])) {PrepareTotalFilterItems(e);return;}if(object.Equals(e.Column, grid.Columns["Quantity"])) {PrepareQuantityFilterItems(e);return;}}---------------------------------------------------------回调处理---------------------------------------------------------CustomCallback(Ajax 回调处理)<select id="selGridLayout" onchange="grid.PerformCallback(this.value);" > <option selected="selected" value="0">Country</option><option value="1">Country, City</option><option value="2">Company Name</option></select>protected void grid_CustomCallback(object sender, ASPxGridViewCustomCallbackEven tArgs e){int layoutIndex = -1;if(int.TryParse(e.Parameters, out layoutIndex))ApplyLayout(layoutIndex); // 更换布局}CustomButtonCallback(定制按钮的ajax回调处理)protected void grid_CustomButtonCallback(object sender, ASPxGridViewCustomButton CallbackEventArgs e){if(e.ButtonID != "Copy") return;copiedValues = new Hashtable();foreach(string fieldName in copiedFields)copiedValues[fieldName] = grid.GetRowValues(e.VisibleIndex, fieldName);grid.AddNewRow();}---------------------------------------------------------编辑视图---------------------------------------------------------InitNewRow(新建行的数据初始化处理)protected void grid_InitNewRow(object sender, DevExpress.Web.Data.ASPxDataInitNe wRowEventArgs e){if(copiedValues == null) return;foreach(string fieldName in copiedFields) {e.NewValues[fieldName] = copiedValues[fieldName];}}CellEditorInitialize(编辑器初始化)protected void grid_CellEditorInitialize(object sender, ASPxGridViewEditorEventArgs e){if(grid.IsEditing && !grid.IsNewRowEditing && e.Column.FieldName == "City"){string country = (string)grid.GetRowValuesByKeyValue(e.KeyValue, "Country");ASPxComboBox combo = e.Editor as ASPxComboBox;FillCityCombo(combo, country);combo.Callback += new CallbackEventHandlerBase(cmbCity_OnCallback);}}StartRowEditing(开始编辑)protected void grid_StartRowEditing(object sender, DevExpress.Web.Data.ASPxStartRowEditingEventArgs e){if(!grid.IsNewRowEditing) {grid.DoRowValidation();}}RowValidating (行数据验证)protected void grid_RowValidating(object sender, DevExpress.Web.Data.ASPxDataVali dationEventArgs e){foreach(GridViewColumn column in grid.Columns) {GridViewDataColumn dataColumn = column as GridViewDataColumn;if(dataColumn == null) continue;if(e.NewValues[dataColumn.FieldName] == null) {e.Errors[dataColumn] = "Value can't be null.";}}if(e.Errors.Count > 0) e.RowError = "Please, fill all fields.";if(e.NewValues["FirstName"] != null && e.NewValues["FirstName"].ToString().Lengt h < 2) {AddError(e.Errors, grid.Columns["FirstName"], "First Name must be at least two characters long.");}if(e.NewValues["LastName"] != null && e.NewValues["LastName"].ToString().Lengt h < 2) {AddError(e.Errors, grid.Columns["LastName"], "Last Name must be at least two characters long.");}if(e.NewValues["Email"] != null && !e.NewValues["Email"].ToString().Contains("@")) {AddError(e.Errors, grid.Columns["Email"], "Invalid e-mail.");}int age = 0;int.TryParse(e.NewValues["Age"] == null ? string.Empty : e.NewValues["Age"].ToS tring(), out age);if(age < 18) {AddError(e.Errors, grid.Columns["Age"], "Age must be greater than or equal 1 8.");}DateTime arrival = DateTime.MinValue;DateTime.TryParse(e.NewValues["ArrivalDate"] == null ? string.Empty : e.NewValu es["ArrivalDate"].ToString(), out arrival);if(DateTime.Today.Year != arrival.Year || DateTime.Today.Month != arrival.Month) {AddError(e.Errors, grid.Columns["ArrivalDate"], "Arrival date is required and mu st belong to the current month.");}if(string.IsNullOrEmpty(e.RowError) && e.Errors.Count > 0) e.RowError = "Please, correct all errors.";if (e.NewValues["Name"] == null){e.RowError = "功能名称不能为空,请填写功能名称";return;}if (e.NewValues["Remarks"] == null){e.RowError = "功能备注不能为空,请填写功能备注";return;}}行修改事件 RowUpdatingprotected void gvFunction_RowUpdating(object sender,DevExpress.Web.Data.ASPxDataUpdatingEventArgs e){ = e.NewValues[0].ToString();// 组名称functionModel.Remarks = e.NewValues[1].ToString(); // 组备注functionModel.FunctionId = e.Keys[0].ToString();// IDrmodel = client.FunctionEdit(functionModel);// 返回类型表gvFunction.CancelEdit();//结束编辑状态e.Cancel = true;FunctionDataBind();//更新数据}行添加事件RowInsertingprotected void gvFunction_RowInserting(object sender,DevExpress.Web.Data.ASPxDataInsertingEventArgs e){ = e.NewValues[0].ToString();// 组名称functionModel.Remarks = e.NewValues[1].ToString(); // 组备注rmodel = client.FunctionSubmit(functionModel);// 返回类型表gvFunction.CancelEdit();//结束编辑状态e.Cancel = true;FunctionDataBind();//更新数据}行删除事件RowDeletingprotected void gvFunction_RowDeleting(object sender,DevExpress.Web.Data.ASPxDataDeletingEventArgs e){functionModel.FunctionId = e.Keys[0].ToString();// IDclient.FunctionInfoDelete(functionModel);gvFunction.CancelEdit();//结束编辑状态e.Cancel = true;FunctionDataBind();//更新数据}初始化回调事件 Callbackprotected void callbackPanel_Callback(object sender,DevExpress.Web.ASPxClasses.CallbackEventArgsBase e){strGroupID = e.Parameter.ToString();DataBindInfo();// 初始化页面信息SelectUser();// 查找组里面的所有用户DataCheck();}获取行展开改变事件DetailRowExpandedChangedprotected void gvGroup_DetailRowExpandedChanged(object sender, ASPxGridViewDetailRowEventArgs e){SYSolution_WebUI.ServiceReference.GroupInfo groupInfoModel =(SYSolution_WebUI.ServiceReference.GroupInfo)((ASPxGridView)sender).GetRow(e.VisibleIndex);/ / 获取选中行实体ASPxGridView gv =(ASPxGridView)gvGroup.FindDetailRowTemplateControl(e.VisibleIndex, "gvGroupName"); // 获取模板内aspxgridView ID名称SYSolution_WebUI.ServiceReference.GroupInfo[] model =client.GroupSelUserList("GroupId='" + groupInfoModel.GroupId + "'");// 通过组ID值获取实体对象 if (model[0].UserInfoList != null && gv != null)// 当用用户列表值与子aspxgridView 不为空{gv.DataSource = model[0].UserInfoList; // 子aspxgridView绑定数据源gv.DataBind();}if (model[0].UserInfoList[0].Name == "") // 如果子aspxgridView中的用户列表为空时不显示不展开{gvGroup.SettingsDetail.AllowOnlyOneMasterRowExpanded = false;}}排序事件中重新绑定数据 BeforeColumnSortingGroupingprotected void gvGroup_BeforeColumnSortingGrouping(object sender, ASPxGridViewBeforeColumnGroupingSortingEventArgs e){gvGroup.DetailRows.CollapseAllRows();// 关闭所有DetailoRowgvGroup.DetailRows.ExpandRow(3);}重绑定数据使用时先选中行,再查看 FocusedRowChangedProtected void aspxGridView_FocusedRowChanged(object sender,EventArgs e){}行列绑定数据事件CustomUnboundColumnDataProtected void aspxGridView_CustomUnboundColumnData(object sender,EventArgs e){}.隐藏编辑列,在DataBound事件中protected void ASPxGridView1_DataBound(object sender, EventArgs e) {if(ASPxGridView1.VisibleRowCount>0){//ASPxGridView1.Columns[命令列索引](ASPxGridView1.Columns[4] as GridViewCommandColumn).NewButton.Visible = false;}}。

GridView使用大全攻略

GridView使用大全攻略

1.GridView代码分页排序:效果图:1.AllowSorting设为True,aspx代码中是AllowSorting="True";2.默认1页10条,如果要修改每页条数,修改PageSize即可,在aspx代码中是PageSize="12"。

3.默认的是单向排序的,右击GridView弹出“属性”,选择AllowSorting为True即可。

1:分页保存选中状态保存CheckBox的值GridView在分页过程中并不维护CheckBox的选择状态,幸运的是,我们可以使用Session来维护CheckBox的状态,这个功能使用RememberOldValues完成private void RememberOldValues(){ArrayList categoryIDList = new ArrayList();int index = -1;foreach (GridViewRow row in okZMGV.Rows){index =Convert .ToInt32( okZMGV.DataKeys[row.RowIndex].Value);bool result = ((CheckBox)row.FindControl("IsCheckBox")).Checked;// Check in the Sessionif (Session["state"] != null)categoryIDList = (ArrayList)Session["state"];if (result){if (!categoryIDList.Contains(index))categoryIDList.Add(index);}elsecategoryIDList.Remove(index);}if (categoryIDList != null && categoryIDList.Count > 0)Session["state"] = categoryIDList;}还原CheckBox的状态下一步,需要定义一个方法来还原Checkbox的状态值private void RePopulateValues(){ArrayList categoryIDList = (ArrayList)Session["state"];if (categoryIDList != null && categoryIDList.Count > 0){foreach (GridViewRow row in okZMGV .Rows){int index = (int)okZMGV.DataKeys[row.RowIndex].Value;if (categoryIDList.Contains(index)){CheckBox myCheckBox = (CheckBox)row.FindControl("IsCheckBox"); myCheckBox.Checked = true;}}}}最后,在分页事件里调用上面两个方法protected void page_Click(object sender, ImageClickEventArgs e){RememberOldValues();string count = ((ImageButton)sender).CommandArgument.ToString().ToLower ();switch(count){case"prev":if (okZMGV.PageIndex > 0){okZMGV.PageIndex -= 1;}break;case"next":if (okZMGV.PageIndex < okZMGV.PageCount - 1){okZMGV.PageIndex += 1;}break;case "0":okZMGV.PageIndex=0;break;case "last":okZMGV.PageIndex= okZMGV.pagecount-1;break;}BrndOKBind();RePopulateValues();}2.GridView选中,编辑,取消,删除:效果图:后台代码:你可以使用sqlhelper,本文没用。

qml的gridview用法

qml的gridview用法

qml的gridview用法QML中的GridView是一种布局组件,用于在网格状布局中显示项目。

它提供了方便的方式来展示和管理大量的项目,可用于多种应用场景,如图库,电子商务产品列表等。

在本篇文章中,我们将介绍QML中GridView的用法,包括如何创建和配置GridView以及如何自定义项目的外观和行为。

GridView的基本用法:下面是GridView的基本用法示例。

通过这个示例,我们可以了解如何使用GridView及其关键属性来创建一个基本的网格布局。

```qmlimport QtQuick 2.15import QtQuick.Controls 2.15ApplicationWindowwidth: 400height: 300visible: trueGridViewid: gridviewanchors.fill: parentmodel: 20 // 设置模型的数量delegate: Rectanglewidth: 100height: 100color: "lightblue"Textanchors.centerIn: parenttext: index // 使用索引来显示项目的位置}}//定义每行显示的列数//2表示每行显示2个项目,3表示每行显示3个项目,以此类推// 如果不设置,默认为GridView的宽度除以delegate的宽度// width / delegate.width// 每个项目的宽度会根据列数和GridView的宽度自动调整flow: GridView.FlowLeftToRightflow: GridView.TopToBottom//设置项目的间距// spacing为项目之间的距离spacing: 10}```在上述示例中,我们创建了一个基本的GridView,并设置了以下关键属性:- model:用于指定GridView中的项目数量。

wpf gridview用法

wpf gridview用法

wpf gridview用法【实用版】目录1.WPF 概述2.GridView 简介3.GridView 的基本用法4.GridView 的常用属性和事件5.GridView 的自定义列和数据绑定6.GridView 的性能优化7.总结正文一、WPF 概述WPF(Windows Presentation Foundation)是微软推出的一款基于.NET Framework 平台的图形用户界面技术。

WPF 具有丰富的控件库和强大的图形渲染能力,为开发者提供了创建令人印象深刻的用户界面的工具。

二、GridView 简介GridView 是 WPF 中的一种常用控件,用于以表格形式显示数据。

它可以方便地对数据进行分组、排序和筛选,提供了丰富的定制选项,使得开发者能够根据需求创建出具有良好用户体验的界面。

三、GridView 的基本用法1.在 XAML 中添加 GridView 控件在 XAML 中,可以像下面这样添加一个 GridView 控件:```xml<GridView x:Name="gridView" SelectionMode="Multiple" SelectionUnit="FullRow" Margin="10"><GridView.Columns><GridViewColumn Header="姓名" DisplayMemberBinding="{Binding Name}"/><GridViewColumn Header="年龄" DisplayMemberBinding="{Binding Age}"/></GridView.Columns></GridView>```2.在后台代码中绑定数据在后台代码中,可以像下面这样绑定数据:```csharpgridView.ItemsSource = people;```其中,`people`是一个包含`Person`对象的集合。

Gridview用法大总结(全程图解珍藏版)

Gridview用法大总结(全程图解珍藏版)

Gridview⽤法⼤总结(全程图解珍藏版)
由于篇幅限制,代码就不贴啦,要的请点击这⾥;希望朋友们能给出⼀些好的建议,本⼈将尽⼒不断完善本⽂!来点掌声吧,o(∩_∩)o...哈哈
1:在Gridview中⽆须编写后台代码,直接实现增除删改
2:在Gridview中添加新记录
3:在Gridview中实现编辑和更新操作
4:在Gridview中实现⼀次性更新所有记录
5:在Gridview中固定表头的实现
6:在Gridview中合并单元格的实现
7:在Gridview中将数据操作结果显⽰在Footer中
8:在Gridview中添加表头
9:在Gridview中将数据导出
10:在Gridview中实现数据导⼊
11:在Gridview中实现嵌套功能
12:在Gridview中实现多层嵌套
13:在Gridview中实现排序
14:在Gridview中实现分页
15:Gridivew结合CheckBox控件的使⽤
16:Gridview结合DropDownList控件的使⽤
17:Gridview结合RadioButtom的使⽤
18:Gridview内嵌DropDownList控件
19:Gridview结合JS,在客户端结合CheckBox的使⽤
20:在Gridview中设置数据⾏的背景颜⾊
21:在Gridview中设置数据⾏的事件
22:在Gridview中设置数据⾏的其他属性
23:在Gridview中索引主键的使⽤。

Gridview用法(个人总结)202X803

Gridview用法(个人总结)202X803

Gridview用法(个人总结)202X803Gridview用法(个人总结)202*0803Gridview的一些操作:1、添加删除列:直接使用Gridview的删除事件:1)选择Gridview的右上角任务栏,打开之后选择编辑列,然后选择CommandFiled,打开CommandFiled选择删除,然后选择添加,设置HeadText为删除。

2)打开Gridview控件的属性对话框,在事件中双击RowDeleting,然后添加删除事件代码:protectedvoidGridView1_RowDeleting(objectsender,GridViewDelete EventArgse){StringBuildersb=newStringBuilder();sb.AppendFormat(@"DELETEFRO MSUPPLIERSWHEREID="+Convert.ToInt32(GridView1.DataKeys[e.RowIndex] .Value));SQLHelperhelper=newSQLHelper();helper.ExecuteSql(sb.ToStr ing());Bindon();}不使用Gridview的删除事件:使用添加LinkButton的方法实现删除选定行1)选择Gridview的右上角任务栏,打开之后选择编辑列,然后选择TemplateField,设置HeadText为删除,然后在脚本中添加下面代码:2)打开Gridview控件的属性对话框,在事件中双击RowDataBound,添加如下代码://获取删除行的IDif(e.Row.RowType==DataControlRowType.DataRow){stringid=GridVie w1.DataKeys[e.Row.RowIndex].Value.ToString();//得到idLinkButtonibtnDel=(LinkButton)e.Row.FindControl("delet");//实例化LinButton按钮控件mandArgument=id;//指定删除按钮的关联参数ibtnDel.Attributes.Add("onclick","returnconfirm("确定要删除吗?");");}3)打开Gridview控件的属性对话框,在事件中双击RowCommand,添加如下代码:if(mandName=="del"){stringid=mandArgument.ToString();//获得IDStringBuildersb=newStringBuilder();sb.AppendFormat(@"DELETEFROMSUPPLIERSWHEREID="+id);SQLHelperhe lper=newSQLHelper();helper.ExecuteSql(sb.ToString());Bindon();}即可。

Gridview控件的使用要点

Gridview控件的使用要点

Gridview控件的使⽤要点在Gridview的使⽤中,需要记住的⼏点:1、在表格的删除、更新等操作中,如何关联数据库的主键。

如有⼀学⽣信息表:有如下⼏个字段:studID--学⽣ID,studNo--学号,studName--姓名,studSex--性别,studScore--成绩。

其中,studID为表的主键。

下⾯有两种⽅法,使Gridview设置和获取表的主键。

⽅法⼀: 使⽤Gridview的“编辑列”中的“字段”对话框,由CommandField⽣成的“删除”按钮,见下⾯的代码:<asp:CommandField ShowDeleteButton="True" />Girdview前台部分页⾯代码如下:<asp:GridView ID="GridView1" runat="server" AllowPaging="True"AutoGenerateColumns="False" onpageindexchanging="GridView1_PageIndexChanging"onrowdatabound="GridView1_RowDataBound" PageSize="5" Width="657px"onrowdeleting="GridView1_RowDeleting"onrowcancelingedit="GridView1_RowCancelingEdit"onrowediting="GridView1_RowEditing" onrowupdating="GridView1_RowUpdating"onrowcommand="GridView1_RowCommand"><PagerSettings FirstPageText="第⼀页" LastPageText="最后页" Mode="NextPrevious"NextPageText="下⼀页" PreviousPageText="上⼀页" /> <Columns> <asp:BoundField DataField="studNo" HeaderText="学号" /> <asp:BoundField DataField="studName" HeaderText="姓名" /> <asp:BoundField DataField="studSex" HeaderText="性别" /> <asp:BoundField DataField="studScore" HeaderText="成绩" /> <asp:CommandField ShowDeleteButton="True" /> <asp:CommandField ShowEditButton="True" /> </Columns><PagerStyle HorizontalAlign="Right" /><HeaderStyle BackColor="#339966" /></asp:GridView>后台代码如下:public partial class gridviewTest : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){if (!this.IsPostBack){DBind();}}下⾯的DBind()函数中利⽤Gridview的DataKeyNames属性绑定到数据表的主键。

qml的gridview用法(一)

qml的gridview用法(一)
}Hale Waihona Puke delegate:Item{
width:100
height:100
Text{
text:modelData
:parent
}
}
}
该代码创建了一个包含3行2列的网格,每个项的大小为100x100,并展示了名为myModel的数据模型中的数据。
以上就是一些常用的GridView的用法及其详细讲解。通过GridView,我们可以方便地展示并排列二维数据,为用户提供更好的交互体验。
常用属性详解
model
用于设置GridView的数据模型,可以是一个JavaScript对象或者C++中的QAbstractItemModel的子类。
layout
用于设置GridView的布局方式,可以是GridLayout或FlowLayout。GridLayout会根据行数和列数将项排列在网格中,FlowLayout会在一行中尽可能多地显示项。
model:<Model>
//其他属性设置
}
这里的<Model>可以是一个JavaScript对象或者C++中的QAbstractItemModel的子类。
3.设置GridView的布局方式:
GridView{
layout:<Layout>
//其他属性设置
}
这里的<Layout>可以是GridLayout(网格布局)或FlowLayout(流式布局)。
qml的gridview用法(一)
QML的GridView用法详解
简介
GridView是QML中用于展示网格布局的控件,可以方便地展示二维数据。本文将介绍一些GridView的常用用法及其详细讲解。

qml的gridview用法

qml的gridview用法

qml的gridview用法在QML中,GridView是一种用于显示多个元素的控件。

GridView可以将一组数据以网格的形式展示,并且可以自定义布局、样式、交互等。

以下是一个简单的例子,展示了如何使用GridView:qmlGridView {id: gridviewcellWidth: 50cellHeight: 50model: 10 * 10 // 设置网格的大小,这里表示10行10列delegate: Rectangle {color: "#f0f0f0"border.color: "black"Text {text: "Item"color: "black"font.bold: truefont.pixelSize: 16anchors.centerIn: parent}}}在上面的例子中,我们创建了一个GridView,设置了每个单元格的宽度和高度,并通过model属性设置了网格的大小,这里表示10行10列。

然后,我们定义了一个Rectangle作为delegate,用于自定义每个单元格的外观和内容。

在Rectangle中,我们设置了背景颜色和边框颜色,并在中心位置放置了一个文本标签。

除此之外,GridView还提供了其他一些属性和方法,可以用于自定义布局、样式、交互等。

例如,可以通过布局方向属性layoutDirection来设置网格的布局方向,通过突出显示属性highlight来设置突出显示样式,通过移动函数来实现网格的移动操作,通过鼠标事件来响应鼠标事件等。

可以根据具体需求进行定制和扩展。

gridview用法

gridview用法

GridView用法一、概述GridView是Android中非常常用的一个控件,它可以以网格的形式展示大量数据,并且支持滚动和分页加载。

在开发过程中,我们经常需要使用GridView来展示图片、商品列表等具有规律性的数据。

本文将深入探讨GridView的用法,包括如何创建、布局、填充数据以及处理点击事件等方面的内容。

二、创建GridView要创建一个GridView,首先需要在XML布局文件中添加GridView控件。

如下所示:<GridViewandroid:id="@+id/grid_view"android:layout_width="match_parent"android:layout_height="match_parent"android:numColumns="3"android:stretchMode="columnWidth"android:horizontalSpacing="10dp"android:verticalSpacing="10dp"/>上述代码中,我们使用了GridView控件,并且为其指定了id、宽度、高度、列数和间距等属性。

其中,android:numColumns属性用于指定每一行显示的列数,这里我们设置为3列;android:stretchMode属性用于指定当内容不足一行时,是否拉伸填充满整个GridView;android:horizontalSpacing和android:verticalSpacing属性用于指定每个网格之间的水平和垂直间距。

三、填充GridView数据在使用GridView之前,我们需要为其填充数据。

通常情况下,我们可以通过适配器(Adapter)来为GridView提供数据。

datagrid 的用法

datagrid 的用法

datagrid 的用法Datagrid 的用法什么是 DatagridDatagrid 是一种用来展示和操作大量数据的组件,它通常用于数据管理系统和后台管理平台中。

它以表格形式展示数据,并提供了丰富的功能,如搜索、排序、分页、过滤等。

Datagrid 的常见用法以下是一些常见的 Datagrid 的用法:1.数据展示Datagrid 最基本的用途就是展示数据,通过将数据渲染成表格的形式,可以方便地查看和比较数据。

2.数据排序Datagrid 提供了数据排序的功能,可以根据某一列的值对数据进行升序或降序排序,方便用户快速找到所需的数据。

3.数据过滤要展示大量数据时,往往需要提供数据过滤的能力。

Datagrid 提供了强大的过滤功能,用户可以根据条件对数据进行筛选,只展示满足条件的数据。

当数据量很大时,一次性展示所有数据可能会导致页面过长,影响用户体验。

Datagrid 支持数据分页功能,通过分页展示数据,可以提高页面加载速度并减少滚动。

5.数据编辑在某些情况下,用户可能需要对表格中的数据进行编辑。

Datagrid 可以提供编辑功能,允许用户直接在表格中修改数据,并保存修改后的结果。

6.多选和批量操作当用户需要对多条数据进行相同的操作时,Datagrid 可以提供多选和批量操作的功能。

用户可以通过勾选复选框选择多条数据,并对这些数据进行批量操作,如删除、导出等。

7.数据导出Datagrid 可以提供数据导出的功能,用户可以将展示的数据导出为 Excel、CSV 等格式,方便进一步分析和处理。

总结Datagrid 是一种强大的数据展示和操作组件,可以满足各种数据管理系统和后台管理平台的需求。

通过以上列举的用法,我们可以充分利用 Datagrid 的功能,更好地展示和处理大量数据。

Datagrid 提供了数据搜索的功能,用户可以通过输入关键词,在表格中快速定位到匹配的数据。

搜索功能可以在全部列中进行,也可以选择特定的列进行搜索。

DevExpress使用教程:GridView经验小结(官方中文文献经典资料技巧)

DevExpress使用教程:GridView经验小结(官方中文文献经典资料技巧)

DevExpress使⽤教程:GridView经验⼩结(官⽅中⽂⽂献经典资料技巧)下⾯是笔者⾃⼰总结的使⽤ DevExpress Gridview 的⼀些经验⼩结,分享给⼤家:1、去除 GridView 头上的 "Drag a column header here to group by that column"--> 点击 Run Designer -> 找到:OptionView -> 将 ShowGroupPanel :设置为 false ;2、如何显⽰出 GridView ⾃带的搜索功能--> 点击 Run Designer -> 找到: OptionsFind -> 将AlwaysVisible :设置为 True3、如何将GridView的⼤⼩⾃适应窗体的⼤⼩--> 右键 GridView 控件 -> 属性 -> 找到 Dock :设置为 Fill4、当GridView数据源发⽣变化时,如何更改GridView所"绑定的值"Code注:其实就是重新创建了⼀个GridView的实例。

gridView1 = new DevExpress.XtraGrid.Views.Grid.GridView(gridControl1);gridControl1.MainView = gridView1;gridView1.OptionsView.ShowGroupPanel = false;gridView1.OptionsFind.AlwaysVisible = true;gridControl1.DataSource = dt;5、在GridControl 中添加checkbox复选框--> gridView -> run designer -> columns -> 添加⼀列(如果没有的话) 然后如图设置-- > 另外当我们需要动态绑定grid数据时,DataTable 中列的名字要和我们在gridview中设置的FileName名字要移植,不然数据是显⽰不出来的。

关于GridView的一些用法

关于GridView的一些用法

关于GridView的一些用法1.JS读写GridViewGridView解析成table有时间业务需要利用JS脚本来读写GridViewvar objGridViewTable = document.getElementById("GridViewTable");var value = objGridViewTable.rows[0].cells[0].children[0].value;或者 objGridViewT able.rows[0].cells[0].firstChild.value;rows(0)对应Table中的第一个tr,cells[0]对应Table中的第一个tdchildren[0]对应Table中的第一个子对象所以objGridViewT able.rows[0].cells[0].children[0].value 就是得到下面table中的“MyValue”<table><tr><td><span>MyValue</span><td><tr><table>Repeater解析成tr,在Repeater外面加上table用法就一样了2.JavaScript获取GridView选择的行内容一般GridView第一列是多选框CheckBox,负责标记当前行是否被选中,后面可以有文本框T extBox,下拉框DropDownList,标签Lable 这些东西的选取首先就要找出选择的是第几行,如下:var table = document.getElementById("<%=GridView1.ClientID %>");var rowIndex = 0 ;for(var i=1;i<table.rows.length;i++){var input = table.rows[i].cells[0].getElementsByTagName("input")[0].checked;if (input == true){rowIndex = i;return rowIndex ;}}取到TextBox中的值table.rows[rowIndex].cells[3].getElementsByTagName("input ")[0].value取到Lable中的值table.rows[rowIndex].cells[4].getElementsByTagName("span" )[0].innerHTML后面的.innerHTML可以换成.innerText,不过.innerHTML的浏览器兼容性好些。

总结ASPxGridView的使用

总结ASPxGridView的使用

虽然只是做非常小的一个图书管理系统,但由于使用了Devexpress的这个控件还是增加了不少难度的。

虽然控件是用来简化开发的,但是使用规则如果不清楚的话,要研究怎么使用,有点费时,当然这仅仅指第一次使用。

所以把我的经验记录一下,分享一下,算是自我总结吧。

1、首先是ASPxGridView的编辑和删除。

Aspx:<dxwgv:GridViewCommandColumn VisibleIndex="10"Caption="操作"><EditButton Visible="True"Text="编辑"></EditButton><DeleteButton Visible="True"Text="删除"></DeleteButton></dxwgv:GridViewCommandColumn>添加显示编辑删除按钮。

Cs:protected void grid_RowUpdating(object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e) //更新{string S_TSMC, S_TSFL, S_TSZZ, S_CFWZ, D_CBRQ, S_CBS, C_SL, C_JCSL;try{string S_ISBN = Convert.ToString(e.Keys[0]);if (e.NewValues["S_TSMC"] == null){S_TSMC = "";}else{S_TSMC = e.NewValues["S_TSMC"].ToString();//得到该字段的值,但需要必须判断是否是null。

qml的gridview用法

qml的gridview用法

qml的gridview用法QML中的GridView是用于显示多个项目的可滚动视图组件。

它以二维的方式排列项目,并支持项目的动态加载和回收。

在此回答中,我将详细介绍GridView的用法,并提供示例代码。

GridView的基本用法如下:1. 导入GridView组件:在QML文件的开头,使用`importQtQuick.Controls`导入GridView组件。

2. 创建GridView对象:使用GridView元素创建一个GridView对象。

可以通过设置`width`和`height`属性来指定视图的大小。

例如:```GridViewwidth: 400height: 400}```3. 设置模型:使用`model`属性设置GridView的模型。

你可以使用任何Qt支持的模型类,比如ListModel、ListModel的子类或者自定义的模型类。

4. 定义GridView的布局:使用`GridLayout`元素来定义GridView的布局。

设置`GridLayout.columns`和`GridLayout.rows`属性,以确定每行和每列的项目数。

例如:```GridViewwidth: 400height: 400model: myModelGridLayoutcolumns: 3rows: 3}}```5. 定义GridView的项目:在GridLayout元素内部,可以使用Repeater元素和GridView的模型来定义每个项目。

通过设置Repeater 的`model`属性为GridView的`model`属性,将模型中的数据绑定到每个项目。

例如:```GridViewwidth: 400height: 400model: myModelGridLayoutcolumns: 3rows: 3Repeatermodel: myModeldelegate: Itemwidth: 100height: 100}}}}```6. 自定义GridView的项目:可以在Item元素内部定义自定义的项目。

android gridview的用法

android gridview的用法

android gridview的用法Android GridView的用法在Android应用程序开发中,GridView是一个非常有用的组件,用于显示类似表格的数据,并提供了许多自定义选项。

本文将介绍GridView的用法,并逐步讲解如何使用它来创建一个基本的网格布局。

1. 创建一个新的Android项目首先,打开Android Studio并创建一个新的Android项目。

选择一个项目名称和位置,然后选择适当的API级别和设备配置。

2. 准备布局文件在res/layout目录下创建一个新的布局文件,命名为activity_main.xml。

在此文件中,使用GridLayout作为根布局,并添加一些必要的属性。

xml<GridLayoutxmlns:android="android:id="@+id/gridLayout"android:layout_width="match_parent"android:layout_height="match_parent"android:columnCount="3"android:rowCount="3"></GridLayout>在此布局中,我们使用GridLayout作为根布局,并指定了columnCount 和rowCount属性来定义网格的行数和列数。

3. 创建GridView适配器创建一个新的Java类文件,命名为GridAdapter。

在该类中,继承BaseAdapter并实现必要的方法。

javapublic class GridAdapter extends BaseAdapter {private Context context;private List<Integer> data;public GridAdapter(Context context, List<Integer> data) {this.context = context;this.data = data;}@Overridepublic int getCount() {return data.size();}@Overridepublic Integer getItem(int position) {return data.get(position);}@Overridepublic long getItemId(int position) {return position;}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {ImageView imageView;if (convertView == null) {imageView = new ImageView(context);imageView.setLayoutParams(newyoutParams(150, 150));imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);} else {imageView = (ImageView) convertView;}imageView.setImageResource(data.get(position));return imageView;}}在此适配器中,我们使用了一个ImageView作为网格中的单个项,通过设置布局参数和缩放模式来自定义它。

gridview用法

gridview用法

gridview用法GridView是Android平台上常用的控件之一,它是一种用于显示列表数据的布局控件。

它通常被用于以表格形式展现数据,是Android 平台上广泛使用的数据控件之一。

在本文中,我们将介绍GridView的使用以及一些常见问题的解决方式。

GridView的使用:GridView的使用非常简单,以下为GridView的基本用法:1. 在你的布局文件中添加GridView组件:```<GridViewandroid:id="@+id/grid_view"android:layout_width="fill_parent"android:layout_height="wrap_content" />```2. 在你的Activity中引用GridView:GridView gridView = (GridView) findViewById(R.id.grid_view); ```3. 创建一个Adapter,并将其设置给GridView:```gridView.setAdapter(new ImageAdapter(this));```在这个例子中,我们使用了一个ImageAdapter来将图片加载进GridView,这个ImageAdapter我们需要自己进行实现,下面为ImageAdapter的实现:```public class ImageAdapter extends BaseAdapter {private Context mContext;private LayoutInflater inflater = null;public ImageAdapter(Context c) {mContext = c;inflater = (LayoutInflater)mContext.getSystemService(YOUT_INFLATER_SERVIC E);public int getCount() {return mThumbIds.length;}public Object getItem(int position) {return null;}public long getItemId(int position) {return 0;}public View getView(int position, View convertView, ViewGroup parent) {View vi = convertView;ViewHolder holder;if (vi == null) {vi = inflater.inflate(yout.grid_item, parent, false); holder = new ViewHolder();holder.image = (ImageView)vi.findViewById(R.id.imageView1);vi.setTag(holder);} else {holder = (ViewHolder) vi.getTag();}holder.image.setImageResource(mThumbIds[position]);return vi;}static class ViewHolder {ImageView image;}private Integer[] mThumbIds = { R.drawable.one,R.drawable.two,R.drawable.three, R.drawable.four,R.drawable.five, R.drawable.six,R.drawable.seven, R.drawable.eight,R.drawable.nine, R.drawable.ten};}```解决GridView中出现的常见问题:1. 在GridView中显示的图片过大导致内存溢出异常。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

GridView控件用来在表中显示数据源的值。

每列表示一个字段,而每行表示一条记录。

GridView控件支持下面的功能:
∙绑定至数据源控件,如SqlDataSource。

∙内置排序功能
∙内置更新与删除功能
∙内置分页功能
∙内置行选择功能
∙以编程方式访问GridView对象模型以动态设置属性、处理事件等。

∙多个键字段。

∙用于超链接列的多个数据字段。

∙可以通过主题和样式进行自定义外观。

GridView控件中的每一列由一个DataControlField对象表示。

默认情况下,AutoGenerateColumns属性被设置为true,表示为数据源中的每个字段自动创建绑定字段,自动生成的绑定列字段不会添加到Columns集合中。

通过将AutoGenerateColumns属性设置为false,然后创建自定义的Columns集合,您可以手动定义列字段,而不是让GridView控件自动生成列字段。

除了绑定列字段外,您还可以显示按钮列字段、复选框列字段、命令字段、超链接列字段、图像字段或基于您自己的自定义模板的列字段。

下表列出了可以使用的不同列字段类型。

自定义用户界面
您可以通过设置GridView控件的不同部分的样式属性自定义该控件的外观。

下表列出了不同的样式属性。

也可以显示或隐藏控件的不同部分。

下表列出控制显示或隐藏哪些部分的属性。

事件
GridView控件提供多个您可以对其进行编程的事件。

这使您可以在每次发生事件时都运行一个自定义例程。

下表列出了GridView控件支持的事件。

事件说明
PageIndexChanged在单击某一页导航按钮时,但在GridView控件处理分页操作之后发生。


事件通常用于以下情形:在用户定位到该控件中的另一页之后,您需要执行
某项任务。

<pagersettings mode="Numeric"
position="Bottom"
pagebuttoncount="10"/>
从10个按钮里面随便选择一个的情况
PageIndexChanging在单击某一页导航按钮时,但在GridView控件处理分页操作之前发生。


事件通常用于取消分页操作。

RowCancelingEdit在单击某一行的��取消”按钮时,但在GridView控件退出编辑模式之前发
生。

此事件通常用于停止取消操作。

RowCommand当单击GridView控件中的按钮时发生。

此事件通常用于在控件中单击按钮
时执行某项任务。

RowCreated当在GridView控件中创建新行时发生。

此事件通常用于在创建行时修改行
的内容。

RowDataBound在GridView控件中将数据行绑定到数据时发生。

此事件通常用于在行绑定
到数据时修改行的内容。

RowDeleted在单击某一行的“删除”按钮时,但在GridView控件从数据源中删除相应记
录之后发生。

此事件通常用于检查删除操作的结果。

RowDeleting在单击某一行的“删除”按钮时,但在GridView控件从数据源中删除相应记
录之前发生。

此事件通常用于取消删除操作。

RowEditing发生在单击某一行的“编辑”按钮以后,GridView控件进入编辑模式之前。

此事件通常用于取消编辑操作。

RowUpdated发生在单击某一行的“更新”按钮,并且GridView控件对该行进行更新之后。

此事件通常用于检查更新操作的结果。

RowUpdating发生在单击某一行的“更新”按钮以后,GridView控件对该行进行更新之前。

此事件通常用于取消更新操作。

相关文档
最新文档