タグ

c#に関するhalohalolinのブックマーク (97)

  • ツールを使ったドキュメント作成技法(前編)(3/3) - @IT

    特集:ツールを使ったドキュメント作成技法(前編) 価値のある開発ドキュメントを効率的に作成するには? アバナード株式会社 市川 龍太(Microsoft MVP 2008 for XML) 2008/05/20 ●XMLドキュメント・コメントを記述したソース・コードの作成 まずはVisual Studio 2008やVisual Studio 2005でコンソール・アプリケーションを新規作成し(プロジェクトの名前は「SandCastleSample」とする)、サンプル・プログラムとして以下のコードを記述する。 using System; namespace SandCastleSample { /// <summary> /// エントリ・ポイント・クラス /// </summary> class Program { /// <summary> /// メイン・エントリ・ポイント ///

    halohalolin
    halohalolin 2010/07/05
    「'''」「///」で、ドキュメントコメント定型文を出力されるようにするには、VS2008の場合、プロジェクトのプロパティ→コンパイル→XMLドキュメントファイルをonにする必要がある。
  • C# Programming

    4.1 ページの遷移方法(NavigateUrl) Menu ナビゲーションでは、複数のメニュー項目を持つことができます。[Menu タスク] から、[メニュー項目の編集]を選択すると、次の [メニュー項目エディタ] から NavigateUrl を指定することができます。これにより、そのアイテムをクリックしたときに、ページを遷移してくれます。 生成されるコードは次のようになります。 <asp:Menu ID="Menu1" runat="server"> <Items> <asp:MenuItem NavigateUrl="~/Default.aspx" Text="新しい項目" Value="新しい項目"></asp:MenuItem> </Items> </asp:Menu> 同様に、TreeViewでは、[TreeView タスク]→[ノードの編集]→を選択すると、[TreeVie

    halohalolin
    halohalolin 2010/06/22
    ページ遷移の際セッション・クッキーを使わず値を受け渡すときは、POST・GETを使わなくてもApplication.Add("Data3", "アプリケーションデータ!");を使う手がある
  • Stringクラスにより文字列を文字列で分割するには?[2.0のみ、C#、VB] - @IT

    .NET Framework 1.xでは、ある文字列を特定の文字列で分割するには、正規表現が利用可能なRegexクラス(System.Text.RegularExpressions名前空間)のSplitメソッドを使用するか、VB用のSplit関数を使用しなければならなかった(後者については「TIPS:文字列を文字列により分割するには?(VB.NET関数活用)」を参照)。 しかしもっと安易に利用できる手段が望まれていたようで、.NET Framework 2.0のStringクラス(System名前空間)には、文字列を文字列により分割できる、Splitメソッドの新しいバージョンが追加されている。 この新しいSplitメソッドは、第1パラメータで指定した文字列配列の要素で対象となる文字列を分割し、その結果を文字列配列として返す。第2パラメータでは、戻り値に空の配列要素を含めるかどうかをStri

    halohalolin
    halohalolin 2010/06/17
    C#では、Split関数で文字列を分割する場合には、オプション値を指定する必要がある。特に設定することはない時は、StringSplitOptions.None
  • .NET TIPS 文字列をURLエンコードするには? - C# VB.NET Webフォーム - @IT

    文字列データをURLに埋め込むような場合には、Webサーバとの間で正しく情報をやりとりするために、その文字列を別の表記形式に変換する(エンコードする)必要がある。これは、文字列データが空白文字や一部の記号(「$」、「#」など)、全角文字などを含んでいると正しく送信されない可能性があるためである。 例えば、IEを使ってGoogleで、 ".NET TIPS" を検索したときには、検索結果の画面でのURL(IEの[アドレス]部分)が次のようになっているはずだ。 http://www.google.co.jp/search?hl=ja&ie=UTF-8&q=%22.NET+TIPS%22&lr= このURLでは、検索文字列「".NET TIPS"」が「%22.NET+TIPS%22」にエンコードされている(「"」が「%22」に、半角スペースが「+」に変換されている。このようなURLのエンコードは

    halohalolin
    halohalolin 2010/06/17
    Cookieに日本語(2バイト)文字列を渡す場合、サーバによっては文字化けが発生するので、HttpUtility.UrlEncode / HttpUtility.UrlDecodeを組み合わせた方が良い
  • World of Warcraft - English (NA) Forums -> Project RBV - Changing How you view boss vids

    Problem installing? In-game or account issues? Reporting bugs? Come and join us here in Support.

    World of Warcraft - English (NA) Forums -> Project RBV - Changing How you view boss vids
    halohalolin
    halohalolin 2010/06/16
    XmlReaderSettings→XmlReaderでRSSやATOMをロードする前には、事前に webClient.Headers.Add("user-agent", USER_AGENT) を付けることで、UserAgentやヘッダーの内容を設定して接続・受信することが出来る/要 Imports System.Net/VBでも応用可
  • ToolTip.OwnerDraw プロパティとは何? わかりやすく解説 Weblio辞書

    Imports System Imports System.Drawing Imports System.Windows.Forms Imports System.Windows.Forms.VisualStyles Public Module ToolTipExampleApp ' The main entry point for the application. <STAThread()> _ Sub Main() Application.Run(New ToolTipExampleForm) End Sub End Module ' Form for the ToolTip example. Public Class ToolTipExampleForm Inherits System.Windows.Forms.Form Private WithEvents toolTip1 As

    halohalolin
    halohalolin 2010/06/07
    ToolTipのpopup/shownイベント内で、現在表示している内容を取得するには<ToolTip>.GetToolTip(e.AssociatedControl)
  • ユーザー アカウント制御 (UAC: User Account Control) - Windows 7 対応アプリケーションの互換性

    4. 新機能や機能変更に伴う互換性問題 この章では、以下のような新機能や機能変更に伴う、互換性問題について紹介します。 4.1 リソースの管理 4.2 整合性レベル (IL) によるオブジェクトへのアクセス制御 4.3 ユーザー アカウント制御 (UAC: User Account Control) 4.4 ユーザー インターフェイス特権の分離 (UIPI) 4.5 Internet Explorer のセキュリティ機能 4.6 Windows リソース保護 (WRP) 4.7 セッション 0 の分離 4.8 ファイル マッピング オブジェクト 4.9 新フォント環境 4.10 プログラムの互換性アシスタント(PCA) 4.11 Internet Explorer 8 の標準準拠 4.12 DEP/NX の既定値 4.13 Windows メールの削除 4.14 容易な High DPI

    ユーザー アカウント制御 (UAC: User Account Control) - Windows 7 対応アプリケーションの互換性
    halohalolin
    halohalolin 2010/05/31
    UACのチェックが入るWindows Vista以降において、レジストリのLocalMachine領域への書き込みが発生するアプリを構築する際に役立ちそう。アカウントAdministratorは、他の管理者アカウントに比べてUACが激甘なのでデバッグ注意!
  • 正規表現を使って文字列から部分文字列を取り除くには?[C#、VB] - @IT

    「TIPS:正規表現を使って部分文字列を取得するには?」では、Regexクラス(System.Text.RegularExpressions名前空間)のMatchメソッドを使用した部分文字列の取り出しについて解説したが、これと並び比較的よく必要となる文字列処理に、部分文字列の削除がある。 Regexクラスには正規表現のパターンにマッチした部分文字列を削除するというメソッドは用意されていないが、マッチした部分を別の文字列に置き換えるReplaceメソッドが用意されている。このため、置き換える文字列として空の文字列を指定することにより、パターンにマッチした部分文字列を取り除くことができる。 パターンにマッチした文字列を別の文字列に置き換えるReplaceメソッド ここではHTML内のタグ部分を取り除き、テキストのみを残したい場合を例に取って解説しよう。HTMLのタグ部分は正規表現を使って簡易的

    halohalolin
    halohalolin 2010/05/27
    HTMLタグを除きたい場合など、正規表現を扱う場合はImports System.Text.RegularExpressionsの上、Regex(正規表現, RegexOptions.Singleline)してReplaceする
  • レジストリの操作: .NET Tips

    レジストリへの書き込み、読み込み、削除を行うここでは、レジストリから値を読み込む、レジストリに値を書き込む、レジストリの値やキーを削除する方法を紹介します。レジストリの操作全般は、RegistryKeyクラスを使って行うことができます。 レジストリに書き込むまずはじめにレジストリに書き込む例を示します。RegistryKey.CreateSubKeyメソッドでキーを開き、RegistryKey.SetValueメソッドで書き込みます。 次の例では、レジストリのキー"HKEY_CURRENT_USER\Software\test\sub"にデータを書き込んでいます。 'キー(HKEY_CURRENT_USER\Software\test\sub)を開く Dim regkey As Microsoft.Win32.RegistryKey = _ Microsoft.Win32.Registry

    レジストリの操作: .NET Tips
    halohalolin
    halohalolin 2010/05/18
    レジストリへの書き込み、読み込み、削除。レジストリの操作全般はRegistryKeyクラスを使って行う。HKEY_LOCAL_MACHINEへ書き込むとユーザ関係の無くソフトウェア統一の設定ができる。但し64bitOSでは、"SOFTWARE\Wow6432Node\~"。
  • System.ServiceModel が必要なのね

    halohalolin
    halohalolin 2010/05/08
    VBでRSSを取得する際にImport System.ServiceModel.Syndicationを指定するが、その前にプロジェクト→「参照」で「System.ServiceModel」と「System.ServiceModel.Web」を加える必要がある
  • ネットワーク、インターネットに接続しているか調べる

    'ネットワークに接続されているか調べる If System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable() Then Console.WriteLine("ネットワークに接続されています。") Else Console.WriteLine("ネットワークに接続されていません。") End If //ネットワークに接続されているか調べる if (System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable()) Console.WriteLine("ネットワークに接続されています。"); else Console.WriteLine("ネットワークに接続されていません。"); ヘルプによると、GetIsNetworkAvailableメソ

    ネットワーク、インターネットに接続しているか調べる
    halohalolin
    halohalolin 2010/04/26
    インターネットに繋がってるかどうかを高速で調べるには、NetworkInterface.GetIsNetworkAvailableを用いる
  • PictureBox上のLabelの背景が透明にならない問題の解決法

    PictureBox上のLabelの背景が透明にならない問題の解決法PictureBoxコントロールの上に配置したLabelコントロールはBackColorプロパティをTransparentにしても透明になったようには見えません。これはLabelコントロールの親コントロールがフォームであり、フォームにあわせてLabelコントロールの背景が設定されるためです。 よってこの問題を解決するには、Labelの親コントロールをPictureBoxにすればよい訳です。 次の例では、Label1という名前のLabelコントロールの親コントロールをPictureBox1という名前のPictureBoxコントロールとし、さらにLabel1の位置を調節しています。(Label1の位置を調節している部分はおまけです。Label1の位置が適当でないと、Label1がPictureBox1からはみ出して、表示されな

    PictureBox上のLabelの背景が透明にならない問題の解決法
    halohalolin
    halohalolin 2010/04/14
    Labelの親コントロールをPictureBoxにする/PictureBox1.Controls.Add(Label1)
  • Download Visual Studio 2005 Retired documentation from Official Microsoft Download Center

    halohalolin
    halohalolin 2010/04/12
    webbrowserコンポーネントを使用する場合には、VBの場合 <STAThread()> _ Public Shared Sub Main() Application.EnableVisualStyles() Application.Run(New Form1()) End Sub を追加する必要がある
  • https://atmarkit.itmedia.co.jp/fdotnet/dotnettips/053allfiles/allfiles.html

    halohalolin
    halohalolin 2010/04/09
    ファイル一覧が欲しい場合は Directory.GetFiles(~)/フォルダ一覧が欲しい場合は Directory.GetDirectories(~)/ファイル&フォルダ一覧が欲しい場合は Directory.GetFileSystemEntries(~)
  • CodeTranslator: Code Translation From VB.NET <-> C# <-> TypeScript <-> Java

    This service will translate the code for you, just start typing the code or upload a file to convert it. Supports converting code from VB.NET to C#, from C# to VB.NET, from C# to TypeScript and from VB.NET to TypeScript and Java to all others. To use it you can either: Start typing your code.Copy and Paste the code in the Code Text Box.Translate an entire file using the file upload. Disclaimer: No

    CodeTranslator: Code Translation From VB.NET <-> C# <-> TypeScript <-> Java
    halohalolin
    halohalolin 2010/04/06
    VB.NET<->C#それぞれで記載されたコードを相互変換する
  • 電源の状態(ACかDCか、充電中か、バッテリー残量など)を取得する

    電源の状態(ACかDCか、充電中か、バッテリー残量など)を取得するここでは、現在のシステムの電源状態(AC電源かDC電源か、充電中か、バッテリー残量はどの位かなど)を取得する方法を紹介します。 SystemInformation.PowerStatusプロパティを使用する方法SystemInformationクラス(System.Windows.Forms名前空間)のPowerStatusプロパティを使用すると、電源状態を簡単に取得できます。このプロパティは、.NET Framework 2.0以降で使用できます。 以下に示すコードでは、AC電源に接続されている(オンライン)か否(オフライン)か、バッテリーの残量、残り時間などの情報を表示しています。 'Imports System.Windows.Forms 'AC電源の状態 Dim pls As PowerLineStatus = Sy

    電源の状態(ACかDCか、充電中か、バッテリー残量など)を取得する
    halohalolin
    halohalolin 2010/03/30
    SystemEventsクラスのPowerModeChangedイベントにより、電源やバッテリーの状態が変化したことを知ることができます。例えば、AC電源からバッテリーへの移行、バッテリー電圧の低下などによりイベントが発生します。
  • サスペンド(休止やスタンバイ)のイベントを得る方法

    WinXPとVB.NETで休止やスタンバイのイベントを受け取るにはどうしたらよいでしょうか? 休止(スタンバイ)に移行しても良いですか? のメッセージを出るようにしたいのですが、 良い方法があったら教えてください。 >WinXPとVB.NETで休止やスタンバイのイベントを受け取るには? WndProc (WindowsProcとも言われたりします) を利用します。 ただ、これはシステムフックをする事になるので、ここでは 1・重い負荷を与える処理 2・ユーザからの入力を待機する処理 はご法度です!! もしそのような処理を入れた場合、 1・システムが次の処理を走らすことができず、動作が不安定になる 2・システムが次の処理を走らすために、アプリ側で捕まえられた処理をタイムアウトとして扱い、アプリ側の変更を受け付けなくなる という事がありえます。 これを回避するには処理を分割しましょう。↓にまとめ

    サスペンド(休止やスタンバイ)のイベントを得る方法
    halohalolin
    halohalolin 2010/03/30
    Suspendによるイベントを取得するVBサンプル。サスペンド処理の為に通信エラーが発生する場合にこの方法が使ってきちんとした中断処理が行えるかもしれない
  • ListBox(またはComboBox)に複数の項目をより速く追加する

    ListBox(またはComboBox)に複数の項目をより速く追加する通常、リストボックス(またはコンボボックス)に項目を追加するには、リストボックスコントロールのItems.Addメソッドで行います。複数項目を追加する時でも、For...Nextを使い、Items.Addメソッドにより一つ一つ追加していけばよいのですが、あまりに追加する項目の数が多いと処理にかなりの時間がかかります。 そのような時は、BeginUpdateメソッドを使用して項目追加時のリストボックスの再描画を禁止することにより、より速く複数の項目を追加することが出来るようになります。さらに、ちらつきもなくなります。 また、追加する項目が配列またはListBox.ObjectCollectionクラスの場合は、Items.AddRangeメソッドを使ってリストに追加するのがよいでしょう。 次の例では、リストボックスコントロ

    ListBox(またはComboBox)に複数の項目をより速く追加する
    halohalolin
    halohalolin 2010/03/23
    BeginUpdateメソッドを使用して項目追加時のリストボックスの再描画を禁止するか、Items.AddRangeメソッドを使ってリストに追加するのがよいでしょう。
  • コントロールの項目を高速に追加/変更/削除するには?[C#、VB] - @IT - beginupdate.html

    リストボックスやリストビューなどのコントロールに大量の項目を一度に追加/変更/削除する場合には、そのコントロールの描画を一時的に停止させることにより、高速に行うことができる。 次のコードは最も単純に、0から29999までの30000万個の数値をリストボックス(listBox1)へ追加し、続けて項目の変更、削除を行う場合の記述例だ。 int ITEMNUM = 30000; // 項目の追加 for (int i = 0; i < ITEMNUM; i++) { listBox1.Items.Add(i); } // 2007ミリ秒 // 項目の変更 for (int i = 0; i < ITEMNUM; i++) { listBox1.Items.Add(i); } // 11193ミリ秒 // 項目の削除 for (int i = 0; i < ITEMNUM; i++) { list

    halohalolin
    halohalolin 2010/03/23
    ListViewを高速化するには、backgroundで情報をまとめるListViewItemを用意した後、AddRangeで転送すると描画が発生しない分高速化する
  • ListViewの仮想表示モード その1 - SATOXのシテオク日記

    いやね、たいした話ではないのですが、ListView(.NET/C#)のVirtualMode(仮想表示)を使ってみたというネタ。 ListViewにはListViewItemと呼ばれる項目を表示できるわけですが、そのアイテムが大量にある場合、その登録に時間が掛かるわけです。ちょっとぐらい待ってもいいと思うかもしれませんが、よりよい操作感を求めるならばこの待ち時間はなくした方がいいのです。 で、以下に示すのが既にListViewItemがnewされている条件で、VirtualModeとAddRangeで一度に登録した場合の違いを試すC#のプログラム。 デザインソースは割愛されているので適宜作成して貼り付けて下さい。登場人物としては、次の通り。 ListView listViewVirtual; ListView listViewNormal; CheckBox checkBoxVirtua

    ListViewの仮想表示モード その1 - SATOXのシテオク日記
    halohalolin
    halohalolin 2010/03/18
    ListViewにはListViewItemと呼ばれる項目を表示できるわけですが、そのアイテムが大量にある場合、その登録に時間が掛かるわけです。ちょっとぐらい待ってもいいと思うかもしれませんが、よりよい操作感を求めるならば...