|
|
|
 |
 |
Исходник |
 |
|
 |
 |
|
Автор:
|
|
|
Название:
|
Выбор строки нажатием на нее |
|
Дата:
|
09 June 2004 |
|
Описание: |
Данный пример позволяет выбрать строку грида при щелчке просто на строку, без кнопки Select |
| |
Разместить ссылку на этот исходник в форуме вы можете вставив в текст сообщения
следующую строку:
[CODEPOST ID=101]Выбор строки нажатием на нее[/CODEPOST] |
| Оценка: |
Проголосовало 23 посетителей, средняя оценка 3.91 |
| Оценить: |
|
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="Test_app.WebForm1" %>
<HTML>
<HEAD>
<title>WebForm1</title>
<script>
function selectRow(rowIndex)
{
document.getElementById('<%=inp_row_index.ClientID%>').value = rowIndex;
<%=GetPostBackEventReference(inp_row_index)%>
}
</script>
</HEAD>
<body >
<form id="Form1" method="post" runat="server">
<asp:DataGrid id="DataGrid1" runat="server" AutoGenerateColumns="False" BorderColor="#E7E7FF" BorderStyle="None" BorderWidth="1px" BackColor="White" CellPadding="3" GridLines="Horizontal">
<SelectedItemStyle Font-Bold="True" ForeColor="#F7F7F7" BackColor="#738A9C">
</SelectedItemStyle>
<AlternatingItemStyle BackColor="#F7F7F7">
</AlternatingItemStyle>
<ItemStyle ForeColor="#4A3C8C" BackColor="#E7E7FF">
</ItemStyle>
<HeaderStyle Font-Bold="True" ForeColor="#F7F7F7" BackColor="#4A3C8C">
</HeaderStyle>
<FooterStyle ForeColor="#4A3C8C" BackColor="#B5C7DE">
</FooterStyle>
<Columns>
<asp:BoundColumn DataField="Name"></asp:BoundColumn>
<asp:ButtonColumn Text="Button" ButtonType="PushButton" HeaderText="Set"></asp:ButtonColumn>
<asp:HyperLinkColumn DataTextField="Link" HeaderText="Go" NavigateUrl="http://ya.ru"></asp:HyperLinkColumn>
</Columns>
<PagerStyle HorizontalAlign="Right" ForeColor="#4A3C8C" BackColor="#E7E7FF" Mode="NumericPages">
</PagerStyle>
</asp:DataGrid>
<asp:Button id="Button2" runat="server"
Text="Button"></asp:Button><INPUT id=inp_row_index type=hidden name=Hidden1 runat="server">
</form>
</body>
</HTML>
//CS:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace Test_app
{
/// <summary>
/// Summary description for WebForm1.
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid DataGrid1;
protected System.Web.UI.HtmlControls.HtmlInputHidden inp_row_index;
protected System.Web.UI.WebControls.Button Button2;
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
DataBind();
}
}
public override void DataBind()
{
DataTable dt = new DataTable();
dt.Columns.Add("Name",typeof(string));
dt.Columns.Add("Link",typeof(string));
for(int i=0; i<10; ++i)
{
DataRow row = dt.NewRow();
row["Name"] = "Name" + i.ToString();
row["Link"] = "Go";
dt.Rows.Add(row);
}
DataGrid1.DataSource = dt;
DataGrid1.DataBind();
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.DataGrid1.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.DataGrid1_ItemDataBound);
this.inp_row_index.ServerChange += new System.EventHandler(this.inp_row_index_ServerChange);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void Button1_Click(object sender, System.EventArgs e)
{
}
private void DataGrid1_ItemDataBound(object sender, DataGridItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
e.Item.Attributes.Add("onclick", String.Format( "selectRow({0});", e.Item.ItemIndex ) );
}
}
private void inp_row_index_ServerChange(object sender, System.EventArgs e)
{
int index = int.Parse( inp_row_index.Value );
DataGrid1.SelectedIndex = index;
DataBind();
}
}
}
|
| Вернуться к списку исходников в категории DataGrid, DataList, Repeater |
|
|
 |
 |
 |
 |
|
|