メニュー わんくま同盟 勉強会情報 メンバリスト 掲示板 ブログ リンク わんくま同盟 C#, VB.NET 掲示板 ライセンスオンライン コメント リンクはご自由にどぞ。 上のバナーでどぞ。 バナーは直リンクでどぞ。 09/10 大阪勉強会 #79 上記イベント 申し込み受付中
フォームに配置されているコントロールを名前で探す例えば、フォームに"TextBox1"という名前のコントロールが配置されている時に、"TextBox1"という文字列でそのコントロールを検索する方法を考えます。 .NET Framework 2.0以降で、ControlCollection.Findを使用する方法.NET Framework 2.0からは、ControlCollection.Findメソッドが追加されました。Findメソッドは、指定した値と同じNameプロパティを持つコントロールを探します。 以下のコードは、フォームクラス内に記述することにより、フォームに配置されているコントロールから"TextBox1"という名前のコントロールを探し、見つかれば、Textプロパティを変更するものです。
C# RegEx 正規表現 開発環境: Visual Studio 2003-2010 1.目次 1.目次 2.目的 3.参考書 4.超簡易正規表現作成支援ツール 5.よく使う正規表現の例 6.よく使う正規表現 5.RegEx デザインパターン 7.ダウンロード 8.ソースコード 2.目的 たま~~に、正規表現が必要になることがあるんですけど、たまにしか使わないからすぐ忘れちゃうんですよね。 今回もたまたま正規表現が必要になる場面があったんですが、使おうと思ってもヘルプの場所を探すのでひと苦労。 それに正規表現が正しいかどうかプログラム内で確認しようとすると、これがまたやっかい! いいかげんいやになって、超簡易正規表現作成支援ツールを作りました。 Web からの正規表現テストツール 3.参考書 (1) MSDN 正規表現言語要素 (2) MSDN RegEx (3) C#プログラミング バ
<body lang=JA style='tab-interval:42.0pt'> <div class=Section1> <p>このページをご覧いただくにはフレーム対応のブラウザが必要です。</p> </div> </body>
ファイルのMD5やSHA1などでハッシュ値を計算するMD5やSHA1を計算する方法は、「MD5やSHA1などでハッシュ値を計算する」で紹介しました。ファイルのハッシュ値を計算する方法もほぼ同じで、MD5CryptoServiceProviderクラスのComputeHashメソッドにバイト型配列ではなく、FileStreamを渡す点が異なるだけです(ファイルをすべて読みこんでバイト型配列を渡してもよいですが、ファイルのサイズが大きいとメモリを消費してしまいます)。 MD5ハッシュ値を計算する例以下に例を示します。ここではTextBox1に入力されているファイルのMD5ハッシュ値を計算しています。 'MD5ハッシュ値を計算するファイル Dim fileName As String = TextBox1.Text 'ファイルを開く Dim fs As New System.IO.FileStr
テキストボックスに、ファイルをドラッグアンドドロップして開けるようにするにはどうするんだろう? と思い立って試行錯誤してこうなった。 PreviewDragOverイベントでFileDropなら受け付けるみたいな処理を書く private void textBox_PreviewDragOver(object sender, DragEventArgs e) { // FileDropならとりあえずOK e.Handled = e.Data.GetData(DataFormats.FileDrop) != null; } Dropイベントでドロップされたファイル名のファイルを開く(とりあえずSJISで) private void textBox_Drop(object sender, DragEventArgs e) { // ドロップされたファイルを開く string[] fileNam
Windows 7 に新しく追加された機能「ジャンプリスト」を使ったランチャを作成してみました。とはいっても Windows API Code Pack のデモを改造しただけですが。 本来はタスクバーにゴミ箱を表示するアプリケーションを作ろう!と思っていました。考えた仕様は TrashBox.exe などとして、これをピン留め。 ゴミ箱の状態をタイマーで取得してゴミ箱がいっぱいか空かでタスクバーのアイコンを変更。 JumpList を使って「ゴミ箱を空にする」コマンドを実行できるようにする。 簡易ランチャ機能とか といったものでしたがタスクバー アイコンの変更が難しかったのであきらめました。だれか作ってくだしあ>< というわけで以下のコードは簡易ランチャのみの実装です*1。コンパイルには Windows API Code Pack 0.85 が必要です。 using System; usi
俗にValidationと呼ばれていることをSilverlight2でしてみるときどうやるのか?についてみてみようと思う。 因みにWPFでは、ValidationRuleというものを作ってBindingにセットすればOK。詳細は、前に書いたエントリにあります。 [WPF][C#]ついに妥当性検証します [WPF][C#]ついに妥当性検証します! その2 さて、Silverlight2では?と思ってみてみるとBindingにValidationRulesプロパティも無ければ、ValidationRuleクラスもない。 ということで、WPFと同じ方法では出来ないということになる。 さて、じゃぁどうやるの?ということになるけど、ぱっと思いつく限りだと以下の3つの方法が思いついた。 因みに、試行錯誤して考えた結果なので、正しいとは限りません。もっといい方法があるかも? こういう方法があるよ!という
今回は定義済みデリゲートのお話です。 定義済みデリゲートとは、クラスライブラリで定義されているラムダ式を格納出来る型のことです。 前回までのサンプルコードでは、Actionデリゲート型のみを使用しましたが、 .NET FrameworkにはAction以外にもラムダ式に使用できる型が定義されています。 以下のコードを御覧ください。 class Program { static void Main(string[] args) { // string型の引数1つ、戻り値voidのラムダ式 Action<string> lambda1 = (string message) => /* 括弧の中に型を明示しても良い */ { // 引数で受け取った文字列を表示 Console.WriteLine(message); }; // string型の引数1つを受け取り、int型の戻り値を返すラムダ式
落とし穴シリーズ(にするつもりは無いのですが)の続きです。 本当は、動的バインドの話を書こうと思ったのですが、ItemsSourceプロパティにバインドするときの注意を忘れてました。 DataGrid コントロールのItemsSourceプロパティには、配列やListコレクションなどが渡せます。最近はジェネリックの流行りが功を奏して(かな?)、List<>を渡す場合が多くなっています。 実は IList と List<> の違いどころを間違えるとややこしいことになるのですが、それは別の機会には話します。型チェックのキャストでは List<> の方が不利なんです。型が2つあるからね。 さて、先日のDataGridのソースでは List<> を渡しました。 ページクラスのコンストラクタを改めてみてみると、次のようになっています。 public PageGrid() { InitializeCo
.NET4.0で追加されたExpandoObjectクラスを使うと実行時にメンバーの追加、削除が出来ます。 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Dynamic; namespace DynamicObjectSample { class Program { static void Main(string args) { dynamic foo = new ExpandoObject(); // プロパティの追加 foo.Name = "mei"; // メソッドの追加 foo.Hi = new Action(() => Console.WriteLine("Hi, {0}!", foo.Name)); // メソッドの追加(引数あ
一番初めのその1ではExceptionValidationRuleというValidationRuleを使用しました。これはバインドしているソースオブジェクトから例外がスローされた場合に検証不合格とするルールでした。これ以外に既定で用意されているValidationRuleとして今回はDataErrorValidationRuleをご紹介します。なお、DataErrorValidationRuleクラスは.NET Framework 3.5 SP1、および3.0 SP1から追加されたものです。 DataErrorValidationRuleはソースオブジェクトのIDataErrorInfoインターフェイス実装により発生するエラーをチェックするValidationRuleです。IDataErrorInfoインターフェイスは.NET Framework 1.0の頃から存在しており、Windows
description次期 Visual Studio の名前は、Visual Studio 10 らしい。略称は VS10。 開発コード名は、「Hawaii」だったそうです。 ということで、それらの記事のまとめとポイント抜粋 (ZD Net Japan)今度の 「Visual Studio」では何が登場するか? http://japan.zdnet.com/sp/feature/07microsoft/story/0,3800083079,20380645,00.htm?ref=rss 2009年または2010年のリリース予定 4つの動き 新しい「Windows Presentation Foundation(WPF)」に基づくテキストエディタ 同スイート全体にさらにWPF的な外観と感覚を取り入れ、さらに「モダン」に サイズ(コードとデータに関する)をVisual S
ConstructorInfoを実行して、型のインスタンスを生成する using System; using System.Collections.Generic; using System.Text; using System.Reflection; namespace ReflectionTest { class ClassA { public ClassA() { Console.WriteLine("Constructor is called."); } public void Method() { Console.WriteLine("Method is called."); } private Int32 i = 0; public Int32 Property { get { return i; } set { i = value; } } } class Program {
これもobject型の参照をstring型の参照に変換している。as演算子では、その手前に変換したい参照を、後ろに変換したい型を記述する。キャスト演算子とas演算子の表記は、まったく違って見えるが、それぞれのコードを実行した結果は同じものとなる。 なお、正確には、文字列をobject型変数に代入している最初の行も暗黙的な変換を行っている。objectクラスは文字列型のスーパークラスであるため、このような操作は暗黙的に行える。 変換できないときの挙動の相違 キャスト演算子はC言語の流れを汲む多くのプログラム言語で使用でき、C#プログラムでも多用されている。これに対し、as演算子を使用したソース・コードを見かけることは多くない。しかし、キャスト演算子とは別にas演算子が存在するのには、それなりの理由がある。両者は、データ型を変換するという目的は似ているが、機能の詳細は同じではない。 第1の相違
今まで理解していなかったのですが、MavenのローカルレポジトリのディレクトリとGradleのディレクトリは、場所が異なるんですね。同じだと思ってTravis-CIでMavenの場合に合わせてディレクトリキャッシュの設定をしていたら、キャッシュが効いていなくて毎回ライブラリのダウンロードが走り、ビルド時間が無駄に伸びていました。以下のように修正することで対処できました。 https://github.com/webauthn4j/webauthn4j/commit/c06094f0b784bfb36972ad4e424592bbf1763982 先月末開催されましたNTT Tech Conference #3でWebAuthnについて紹介してきました。資料はSpeackerDeckで公開しています。 久しぶりに外向きにアウトプットしましたが、資料をまとめる過程で自分の理解も進んで良いですね
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く