Labelの折り返し(半角英数)をCSSで行う
毎度忘れてしまうので、メモ。CSSは下記のように書いて、Labelクラスを継承したクラスに、DIVタグで出力するためのプロパティを作成。DIVタグ時にはrapを摘要するようにしておいてあげる。
div.rap { white-space: -pre-wrap; /* Opera 4-6 */ white-space: -o-pre-wrap; /* Opera 7 */ white-space: -moz-pre-wrap; /* Mozilla */ white-space: -hp-pre-wrap; /* HP Printers */ word-wrap: break-word; /* IE 5+ */ }
[DefaultValue(false)] [Description("Divタグによる出力をする")] public bool DivTag { get; set; } protected override HtmlTextWriterTag TagKey { get { if (DivTag) { base.CssClass = "rap"; return HtmlTextWriterTag.Div; } else { return base.TagKey; } } }
デバッグ文を表示したい
VisualStudioでちょっとしたデバッグ情報を表示したいとき用。いっつも忘れるのでメモ。こんなのメモするのも恥ずかしいんだけど。もし出力ウィンドウがない場合は、[表示]-[出力]で出せます。
System.Diagnostics.Debug.WriteLine(DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss.FFF"));
EnterKey押下時のSubmitの抑制
IEだけならここみてすぐに分かりました。
EnterキーでのSubmitを抑止する
FireFoxへの対応がちょっと面倒だったけど動いたので記録しておく。切り分けの方法についてはこちらを参考にさせて頂きました。
FireFoxとIEの差、textとsrcElementに、はまる
/*EnterKey対応 (1)KeyCodeが取れなかった場合はchecodeで対応(FF向け) (2)イベントが発生した箇所のType取得(FF対応で分岐) (3)内容を見てfalse */ function EnterBlock(event) { var event = event || window.event; //KeyCodeの設定 if (event.keyCode != 0) { key = event.keyCode } else { key = event.charcode } //Typeの取得 if (document.all) { type = event.srcElement.type; } else { type = event.target.type; } //SubmitとTextArea以外の場合は抑止 if (key == 13) { if (type != 'submit' && type != 'textarea') { event.keyCode = 0; event.charcode = 0; return false; } } }
こちらはMasterPageにformがあるので、CodeBehindのPage_Loadに記述
this.form1.Attributes.Add("onkeypress", "return EnterBlock(event)");
VisualStudio2010 Express + NUnit でDebug実行ができない場合 追記
VisualStudio2010 Express + NUnit でDebug実行ができない場合
以前書いたけど、NUnitが新しくなっていて、またDebug実行できなくなってたので調べて追記
NUnitのバージョンは2.6で、configを下記のように直します。
nunit.exe.config
<startup> <requiredRuntime version="v4.0.30319" /> </startup> <startup useLegacyV2RuntimeActivationPolicy="true"> <!-- Comment out the next line to force use of .NET 4.0 --> <!-- <supportedRuntime version="v2.0.50727" /> --> <supportedRuntime version="v4.0.30319" /> </startup>
AjaxControlToolKit入れた時のエラー回避
「コントロールにコードブロック(<% ... %>)が含まれているため、コントロールのコレクションを変更できません」が出ました。原因はMasterPageに記載しているJavascriptのimport文の箇所
細かいことはこちらに乗っていましたが、対応はシンプル
http://aspnetresources.com/blog/code_blocks_inside_master_pages_cause_trouble
<script type="text/javascript" src="<%= this.ResolveClientUrl("~/Scripts/test.js") %>">
- これの「<%=」 を 「<%#」 に変える
- headをサーバーコントロールに変える
- 下記のようにデータバインドする。以上
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
this.head1.DataBind();
}
プランニングポーカー初実践
ワークショップなどではやっていたけど、実務で使うの初めて!まー、面白かった。
今回のプロジェクトは、互いには知ってはいるけど、一緒のプロジェクト初めての人が多くて、年代も結構ばらばらで、出身も違うので文化が全然違う。プランニングポーカーで、まー、全然みんなが同じカードにならないの(笑)
やー、面白かったわ。
2週間後、どうなってるのかとっても楽しみ
VisualStudio2010でSilverlight4にようやく挑戦
Silverlightに挑戦しようと思って早何年?もうすっかりバージョンが4じゃないですか。お恥ずかしい。大体Silverlightは5も発表になってるじゃないですか。もう本当にお恥ずかしい。急に恥ずかしくなったのでとりえあずもろもろ環境設定からやってみることにした。
- 必要なもの
- 環境設定
- VisualWebDeveloperインストール後、Microsoft Silverlight 4 Tools for Visual Studio 2010 をインストール
- Silverlight 4 Tools パッケージによって、必要に応じて以前の Silverlight 4 および Silverlight 4 Tools コンポーネントがアンインストールおよび更新されます。と書いてあるので気にせずインストーラをクリック、次へ順に進んでいけば完了!
- 参考にしたところ
- MSDN内の実例で学ぶアプリケーション開発 Ver.2 UIにSilverlight4、データ処理にWCF RIA Service、サービスにWCFを使ったサンプルと説明があります
- Codezine内のWCF RIAServicesで業務アプリケーションをよりシンプルに こちらもUIにSilverlight4を使ったサンプルだったので参考にしました
とりあえず、次回に続く。続くか!?