String.Empty or string.Empty?

機能的にはどちらも変わらないらしいが、
String.Empty の方は using System; で参照設定が必要。


昔VBをやっていた頃の名残か癖か、自分はStringを無意識的に使っていることに気づいた。
しかし、例えばC#で using Microsoft.VisualBasic; などとしてVBの関数を使用する際には大文字で書いていると混同してしまう。最終的には「どっちでもいいじゃん」というような話ではあるのだが、小文字で統一したほうが良さそうだと思った。

[.NET]この行は既に別のテーブルに属しています

DataTableに行を追加しようと思って、
.Rows.Add()
などとするのだが、DataRowがすでに存在している場合はエラーとなる。

insertを何度も発行するような処理を行いたい場合にはImportRowメソッドにより行を追加する。
DataTable.ImportRow メソッド

これはDataTableをSelectし、DataRow[]にあるデータを既存のDataTableに追加する場合などに重宝するだろう。
DataRow[] dtRows = dt2.Select("hoge = 1");
foreach (DataRow dr in dtRows )
{
    dt1.ImportRow(dtRows);
}

あまりスマートではない感じだが、覚えておくと便利そうだ。

[EXCEL]セルの中身がシャープで「#####」表示されてしまう。

入力値がセルの幅に収まらない場合に発生するらしい。
日付や数値の場合にこうなる場合が多いのだが、表示形式が「文字列」である場合には以下の理由でもある。

[XL2002] 表示形式が文字列のとき 256 文字以上の文字を表示できない
http://support.microsoft.com/kb/410234/ja

[解決策]
  • セルの横幅を広げる。
  • 右クリック - セルの書式設定 - 表示形式 → 「標準」 に変更する。

Firefox4をRAMディスクにインストールしたら起動できなかった…

RamPhantomEXでRAMディスクを作成した。
そこへFirefox4をインストールしたら起動できなかった…。
原因は不明…。


本当に少しだけ触った印象としては、Betaの時より良くなっている。
画面線画もだいぶ速くなっているようだ。

gooメールでピーターラビット

久しぶりにアクセスしてみたらピーターラビットのデザインが追加されていた。
こういうのは良いね。

CSE (Common SQL Environment) で画面がおかしくなった時

CSE を使用していて、ウィンドウの表示にチェックが入っているにもかかわらず表示されなくなる現象が発生した。そういう際にまずダウンロードし直してみるのだが、これでも直らない。

というのも、このアプリはレジストリに設定を保存しているのだ。

CSE の設定場所
HKEY_CURRENT_USER\Software\Tsumiki Software\cse

上記「cse」をまるごと削除してアプリを起動するとまっさらな状態に戻る。
 ただ、すべて削除すると設定情報も消えるので注意。

ASP.NETのAJAXでエラー? The control with ID...requires a ScriptManager on the page...

ASP.NETのフォームにAJAX ExtensionsのUpdatePanelやScriptManagerを配置する。
これで普通に動くはずだが、

The control with ID "コントロール名" requires a ScriptManager on the page. The ScriptManager must appear before any controls that need it.

なんてエラーメッセージが出る時がある。

調べたらScriptManagerはUpdatePanelよりも前に配置する必要があるらしい。
確かにScriptManagerの位置を変更したらエラーが出るようになった…かもしれないw

推測だが、ページは上から評価されているんだろうね。
で、ScriptManagerがないのにUpdatePanelがある!ということでエラーになったのだろう。

Stylishが原因でFirefox起動時にエラーが出る際の対処法

Stylish is having problems opening its database.
Firefoxを起動させるときに、こんなエラーが出るかもしれない。
これはStylishのデータベースが破損していることに起因しているかもしれないエラーだ。

【対処法】
  1. データベースツール「SQLite Database Browser」をダウンロードする。
  2. Firefoxを起動する。(エラーが出るかもしれないが放置)
  3. アドレスバーに「about:support」と入力する。


  4. プロファイルディレクトリの「フォルダを開く 」。
  5. Firefoxを閉じる。
  6. 先ほど開いたプロファイルフォルダに、「stylish.sqlite」があるはずなので、それをダウンロードしたSQLite Database Browserで開く。
  7. ファイルを選択して、File - Compact Databaseを実行する。

  8. SQLite Database Browserを閉じる。

この作業の後に、一度「Stylish」をアンインストールして、再インストールすれば完璧だと思う。

DELLノートPCでトラックパッドのスクロールができない?

ノートPCにはたいていタッチパッドが付いているものだが、これにはブラウザやエクスプローラ等のスクロール機能が付いているものもある。

この機能だが、DELLのノートPCでは Program Files\DellTPad の中にある
「ApntEx.exe」「Apoint.exe」というプログラムで動かしているようだ。

スクロールができない? と思って色々と調べてみたらそういうことらしい。
ちなみにこれはLATITUDEシリーズのお話。