.NET

Alt+←→

ここを見て、ショートカットで「Alt+←、Alt+→」を実現できました。ありがとうございます! http://www2u.biglobe.ne.jp/~kaduhiko/csharp_03.html

属性

.NETの属性ってのは、実におもしろいアイディアだと思う。属性は.NETフレームワークを支える重要な柱だと思っている。 言語の仕様にするとくどくどした文法をごちゃごちゃと付け加えないといけないものなんかを、属性で表現してしまえば簡単に取り扱えたりす…

前方一致、後方一致、完全一致

.NETだと、前方一致、後方一致、完全一致が既に用意されていてとても便利。 stringのStartsWith、EndsWith、Compare。 CompareInfoのIsPrefix、IsSuffix、Compare。 楽♪

ラジオボタンのグループ

ラジオボタンのグループに対してenumを割り当て、チェック状態の読み取りと設定の2つのインターフェイスを簡単にできないんだろうか。 決まりきったコードを書くのが退屈でしょうがない。 なんか簡単にできそうな気がするけど、う〜ん。

子コントロールのイベントを公開する

カスタムの複合コントロールなんかで便利な技。子コントロールのイベントの一部を公開する方法。 例では bottonClose という名称のボタンコントロールがあるとして、その Click イベントを CloseButtonClick として公開しています。 public event EventHandl…

例外一覧

Visual Studio .NET 2003で「デバッグ」→「例外」で例外一覧が見れた! 気付かなかった…。例外発生時の動作も選択できるんですね。

スクロールポジションの初期化

スクロールポジションを初期化するには、panel1.AutoScrollPosition = panel1.AutoScrollPosition;のように書けばいい。これでてっぺんに戻ります。 AutoScrollPositionで検索から飛んでくる人が多いのでメモ。

Visual Studio 2005 Beta 2日本語版

出た。http://www.asia.microsoft.com/japan/presspass/detail.aspx?newsid=2269

移動メソッド

Point と Rectangle は Offset。Region は Translate ? GraphicsPath は? Transform を使えば移動できるのかな?どうやるんだろ。

.NETの普及率

.NETフレームワークはクライアントマシンにどの程度普及しているのか? ある日のあるサイトにアクセスした、UserAgentの自己申告から調べてみた。 ユニークユーザ数(IPとUserAgent名の一致するものを省いた数): 1584 MSIEを含むUserAgent数: 1380 .NET CLRを…

IndexOfのCompareOptionsの詳しい解説 の続き

id:siokoshou:20050411のプログラムで奇妙なのは keyword = ""、buff = "" のときです*1。このとき、無限ループに入ります(無限ループはプログラムがいいかげんなのが悪いのですがw)。posにいくつを入れても、optに何を入れても例外はあがってきません。Stri…

IndexOfのCompareOptionsの詳しい解説

IndexOfでのCompareOptionsについてid:siokoshou:20050411のプログラムでいろいろ調べてみました。 Compareはまた別かもしれないので注意! Ordinalは各文字のUnicode値を単純に比較する。もっとも単純な比較処理。デフォルトがこれだと思っていたら痛い目に…

Compareの危険性

MSDNライブラリの「カルチャを認識しない文字列比較の実行」によると、「セキュリティ上の決定が文字列比較の結果に基づいて行われる場合は、カルチャを認識しない操作を実行して、結果が CultureInfo.CurrentCulture の値の影響を受けないようにします。」…

危険な「〇」文字

上記2件の実行結果です。Compareでは、CompareOrdinalはマッチせず、CompareのInvariantCultureではマッチします。Ordinal以外では「〇」文字は無視されます。IndexOfで「〇」文字はすべての文字にヒットします。「あいうえお」くらいしか試してませんが、…

IndexOfの危険性

IndexOfでも「〇」文字が不思議な動作をします。id:siokoshou:20050411のプログラムで、 const string keyword = "〇"; const string buff = "あいうえお";にすると不思議なことが起きます。

IndexOfのCompareOptions

CompareInfoのIndexOfで、CompareOptionsってどんな比較をしてるの?と思って試してみました。注)buffには本当は15文字目から半角カナが含まれています。はてなでは半角カナが全角に置き換えられてしまいます。 注2)IndexOfのいじめ試験プログラムです。Inde…

日本語Windowsでの文字列の比較や検索

文字列の比較のあたりの話題は、MSDNライブラリの「固有カルチャのデータの比較と並べ替え」に詳しい記述がありました。 http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpguide/html/cpconsortingdataforspecificcul…

stringのIndexOfは高度な比較処理

stringのIndexOfをいろいろ調べてみました。セキュリティにかかわる場面で仕様を知らずに使うと、セキュリティホールになりかねないもののようです。国際化なんてしないからSystem.Globalizationなんか知らなくていいやっと思ってたけど、知らないと危険かも…

C#実行速度比較

blogサーバ構築記(サーバ構築記)さんで、C#の実行速度に関するおもしろい記事を見たので、速度比較してみます。元の記事はこちら。ファイル中の文字列をカウントするコードです。C#でポインタを使って文字列を探し出しています。これと、素直に書いたコード…

Unique Algorithm

フレームワークにUniqueがないな〜と思って書いてみました。あまりにも簡単に書けてびっくり!Unixでお馴染みのuniqの処理です。 using System; using System.Collections; namespace Siokoshou { public class ArrayListWithUnique : ArrayList { public Ar…

Rss Bandit

C#で書かれたフリーのRSSリーダー。ソースのライセンスはBSDライセンス。 RSS Bandit河端善博さんのblogで知りました。河端さんにより日本語化されており、非常に便利です。 RSSBanditでは、フリーソフトなら無料で使えるコントロールがいろいろ使われていま…

FAQまとめ

C# FAQ 日本語版 http://www.gotdotnet.com/team/ja/team/csharp/learn/faq/default.aspx オリジナル http://msdn.microsoft.com/vcsharp/team/faq/default.aspx Windows Forms FAQ MS http://msdn.microsoft.com/smartclient/community/wffaq/default.aspx …

Power Collections for .NET

open source な Generics Library(collection class library)。http://www.wintellect.com/PowerCollections/MSDN TVで取り上げてた。広く使われそうです。 本家C#2.0で予定されているクラス、インターフェイスはこちら。http://msdn2.microsoft.com/library…

配置のあれこれ

MSDNを読む前に、使ってみたほうが分かりやすい。MSDNの配置の説明はかなりひどい。特に「配置の方法」の配下はひどい。たまねぎ賞。 配置手段 1.VS.NETの組み込み配置ツール 2.Xcopy 3.Webアプリならプロジェクトのコピーコマンド 4.サードパーティ製インス…

イベントハンドラ一覧

http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpref/html/frlrfsystemmulticastdelegateclasshierarchy.asp違うのもまじっているけど。こっちも全部か分からない。例外は階層が深いのでこれらのようにまとまった情…

属性一覧

http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpref/html/frlrfsystemattributeclasshierarchy.asp全部じゃないかも。

マネージドコードの速度

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/fastmanagedcode.aspあんまりここまでの情報は必要ないのかもしれないけど、やっぱり気になるところ。 最後のところでちょこっとだけスペースコストも触れている。 Box化の…

Color、Font、SizeのDefaultValue属性

http://www.orthogonal.com.au/hobby/computers/blog/0100.htm↑で発見したDefaultValue属性の指定方法をメモ。DefaultValue( typeof(Color), "Pink" ) DefaultValue( typeof(Color), "98, 142, 203" ) DefaultValue( typeof(Font), "MS Pゴシック, 9pt" )…

コンポーネント続き

読んでみました。サービスの使い方は理解できたものの、Formで必要なのかな?って疑問が残ってしまった。コメント欄も情報たっぷり含んでいておもしろいっす! アンビエントの件は分からなかった〜。

コンポーネント

http://www.urbanpotato.net/default.aspx/document/1757コンポーネントって何なんだろうって思っていたけど、その疑問に答えてくれそうな情報を見つけました。siteってコンポーネント関連で使われていたんですね。 デザイナで使うだけじゃないってとこまで…