asp.Net常用コード(6)

4679 ワード

private void DataGrid1_ItemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
 foreach(DataGridItem di in this.DataGrid1.Items)
 {
  if(di.ItemType==ListItemType.Item||di.ItemType==ListItemType.AlternatingItem)
  {
   ((LinkButton)di.Cells[8].Controls[0]).Attributes.Add("onclick","return confirm(’ ?’);");
  }
 }
}

スタイルの入れ替え:ListItemType itemType = e.Item.ItemType;

if (itemType == ListItemType.Item )
{
 e.Item.Attributes["onmouseout"] = "javascript:this.style.backgroundColor=’#FFFFFF’;";
 e.Item.Attributes["onmouseover"] = "javascript:this.style.backgroundColor=’#d9ece1’;cursor=’hand’;" ;
}
else if( itemType == ListItemType.AlternatingItem)
{
 e.Item.Attributes["onmouseout"] = "javascript:this.style.backgroundColor=’#a0d7c4’;";
 e.Item.Attributes["onmouseover"] = "javascript:this.style.backgroundColor=’#d9ece1’;cursor=’hand’;" ;
}

番号付き列を追加するには、次の手順に従います.DataTable dt= c.ExecuteRtnTableForAccess(sqltxt); // sql DataTable
DataColumn dc=dt.Columns.Add("number",System.Type.GetType("System.String"));

for(int i=0;i<dt.Rows.Count;i++)
{
 dt.Rows[i]["number"]=(i+1).ToString();
}

DataGrid1.DataSource=dt;
DataGrid1.DataBind();

DataGrid 1にCheckBoxを追加し、ページに全選択ボックスを追加private void CheckBox2_CheckedChanged(object sender, System.EventArgs e)
{
 foreach(DataGridItem thisitem in DataGrid1.Items)
 {
  ((CheckBox)thisitem.Cells[0].Controls[1]).Checked=CheckBox2.Checked;
 }
}

現在のページのDataGrid 1に表示されているデータをすべて削除foreach(DataGridItem thisitem in DataGrid1.Items)
{
 if(((CheckBox)thisitem.Cells[0].Controls[1]).Checked)
 {
  string strloginid= DataGrid1.DataKeys[thisitem.ItemIndex].ToString();
  Del (strloginid); //
 }
}

  
30.ファイルが異なるディレクトリの下にある場合、データベース接続文字列を取得する必要があります(接続文字列がWeb.configに置かれている場合、Global.asaxで初期化されます).
アプリケーション_Startに次のコードを追加します.Application["ConnStr"]=this.Context.Request.PhysicalApplicationPath+ConfigurationSettings.
   AppSettings["ConnStr"].ToString();

  
31.変数ToString()
文字型変換から文字列へ12345.ToString("n"); // 12,345.00
12345.ToString("C"); // ¥12,345.00
12345.ToString("e"); // 1.234500e+004
12345.ToString("f4"); // 12345.0000
12345.ToString("x"); // 3039 (16 )
12345.ToString("p"); // 1,234,500.00%

  
32、変数Substring(パラメータ1、パラメータ2);
文字列の一部を切り取り,パラメータ1は左開始ビット数,パラメータ2は数ビットを切り取る.例えば、string s 1=str.Substring(0,2);
  
33.自分のサイトに他のサイトにログインする:(もしあなたのページがネスト方式であれば、1つのページに1つのFORMしかないので、このとき別のページに導いてログイン情報を提出することができます)<SCRIPT language="javascript">
<!--
 function gook(pws)
 {
  frm.submit();
 }
//-->

</SCRIPT> <body leftMargin="0" topMargin="0" onload="javascript:gook()" marginwidth="0" marginheight="0">
<form name="frm" action=" http://220.194.55.68:6080/login.php?retid=7259 " method="post">
<tr>
<td>
<input id="f_user" type="hidden" size="1" name="f_user" runat="server">
<input id="f_domain" type="hidden" size="1" name="f_domain" runat="server">
<input class="box" id="f_pass" type="hidden" size="1" name="pwshow" runat="server">

<INPUT id="lng" type="hidden" maxLength="20" size="1" value="5" name="lng">
<INPUT id="tem" type="hidden" size="1" value="2" name="tem">

</td>

</tr>

</form>

テキストボックスの名前は、ログインするページの名前でなければなりません.ソースコードがだめならvsnifferで見てもいいです.
次に、ユーザが入力したログイン情報を取得するコードを示します.string name;
name=Request.QueryString["EmailName"];

try
{
 int a=name.IndexOf("@",0,name.Length);
 f_user.Value=name.Substring(0,a);
 f_domain.Value=name.Substring(a+1,name.Length-(a+1));
 f_pass.Value=Request.QueryString["Psw"];
}

catch
{
 Script.Alert(" !");
 Server.Transfer("index.aspx");
}