トップ 差分 一覧 ソース 検索 ヘルプ PDF RSS ログイン

ASP.NET

「グローバル」変数

Logging

DataGrid

編集

TextBox name = (TextBox) e.Item.FindControl("txtName");

のようなパターンが基

DropDownList isPublicDdl = (DropDownList) e.Item.Cells[6].Controls[1];

ID参照できないときは上記

DataGrid - Template Item - label(s) in ItemTemplate

(DataBindings) ... Custom Binding Expression
DataBinder.Eval(Container, "DataItem.<property>")

Template Item

Controls[]の数字の順番は「画面上の位置関係」ではなく「配置した順番」で決まるような気がするが詳細は確認していない.

DataGridコントロール内のドロップダウンリストに動的に項目を追加するには? - C# Webフォーム

http://www.atmarkit.co.jp/fdotnet/dotnettips/090dropdowndg/dropdowndg.html

リスト内容が固定の場合はVisual Studio で DropDownList のプロパティのItemsを直接編集することで定義できる。

ページ・タイトルを実行時に設定するには? - C# Webフォーム

http://www.atmarkit.co.jp/fdotnet/dotnettips/131pagetitle/pagetitle.html

C# snippets

QueryString

Request.QueryString["foo"]

Open New Window

private void Button1_Click(object sender, System.EventArgs e)
{
  Page.RegisterStartupScript("OpenNewWindow",
    "<script language='javascript'>window.open('foo.aspx', '_blank', 'scrollbars=1,width=480,height=480');</script>");
}

Enterキー無効化

テキストフォームおよびそれと無関係なボタンがあるときに,テキストフォーム内でenterキーを入力すると無関係なボタンが押されたことになってしまう問題がある.
対処法は意外と面倒くさい.

<script language="JavaScript">
<!--
document.onkeydown = KeyEvent;    
self.focus();                      
function KeyEvent(e){  
var evt;
if (e==null)
	evt = event;
else
	evt = e;
key=evt.keyCode;
if(key==13){return false;}
}
//-->
</script>

上記のコードをHTMLファイルの<head>内に入れることで対応できる.
キーイベント周りがややこしいのはIEとFirefox等でonkeydownイベント時のふるまいが異なるため.IEはイベントハンドら関数に引数としてイベントを渡さない.