忍者ブログ

技術メモ

Home > ブログ > 記事一覧

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

【Reflectionを使った文字列からのメソッド・プロパティ呼出及びクラスインスタンス化】

1.メソッドの呼出
    //型情報を取得
    Type tp = this.GetType();
    //型情報からメソッド情報を取得
    MethodInfo mi = tp.GetMethod(メソッド名);
    //メソッド情報からメソッド呼出
    XXX rtn = (XXX)mi.Invoke(tp, new object[] { 引数1,引数2,・・・ });

2.プロパティの呼出
    //型情報を取得
    Type tp = this.GetType();
    //型情報からプロパティ情報を取得
    System.Reflection.PropertyInfo pi = tp.GetProperty();
    //プロパティ情報から値を取得
    string aaa = (aaa)pi.GetValue(tp, null);
    pi.SetValue(tp, 設定値,null);

3.インスタンスの作成
    //対象となるアセンブリのロード(※ロードされていない場合)
    Assembly asm = Assembly.LoadFrom("ErcCommonProject.dll");
    //アセンブリ内の対象クラス情報を取得
    Type tp = asm.GetType(クラス名);
    //インスタンス作成
    クラス名 clsinstance = (クラス名)Activator.CreateInstance(tp);

 


PR

【テーブルに枠を設定する】

1.イメージを作成
  添付のイメージ(左上・左・左下・右上・右・右下・上・下)を作成
  ※サーバーにUpされているものを利用

2.CSSを作成
  以下のCSSを作成する
------------------------------------------------------------------------------------
/*-- フレーム左上隅 --*/
TD.frameLT
{
 MARGIN: 0 0 0 0;
 padding:0;
 background-image:url(image/2frame_LT.gif);
 width:7px; height:7px;
}
/*-- フレーム右上隅 --*/
TD.frameRT
{
 MARGIN: 0 0 0 0;
 padding:0;
 background-image:url(image/2frame_RT.gif);
 width:7px; height:7px;
}
/*-- フレーム左下隅 --*/
TD.frameLB
{
 MARGIN: 0 0 0 0;
 padding:0;
 background-image:url(image/2frame_LB.gif);
 width:7px; height:7px;
}
/*-- フレーム右下隅 --*/
TD.frameRB
{
 MARGIN: 0 0 0 0;
 padding:0;
 background-image:url(image/2frame_RB.gif);
 width:7px; height:7px;
}
/*-- フレーム上枠 --*/
TD.frameT
{
 MARGIN: 0 0 0 0;
 padding:0
 background-image:url(image/2frame_T.gif);
 background-repeat:repeat-x;
 height:7px;
}
/*-- フレーム下枠 --*/
TD.frameB
{
 MARGIN: 0 0 0 0;
 background-image:url(image/2frame_B.gif);
 background-repeat:repeat-x;
 height:7px;
}
/*-- フレーム左枠 --*/
TD.frameL
{
 background-image:url(image/2frame_L.gif);
 background-repeat:repeat-y;
 width:7px;
}
/*-- フレーム右枠 --*/
TD.frameR
{
 background-image:url(image/2frame_R.gif);background-repeat:repeat-y;
 width:7px;
}
------------------------------------------------------------------------------------


3.Tableを作成
  以下のTableを作成する
  ※CSS作成時に、top/bottomのwidthを100%に設定すると右線が消えるので注意
    (上下セル以外のセル幅の設定にもよるかもしれません)
------------------------------------------------------------------------------------
    <table>
      <tr>
        <td class="frameLT"></td>
        <td class="frameT"></td>
        <td class="frameRT"></td>
      </tr>
      <tr>
        <td class="frameL"></td>
        <td></td>
        <td class="frameR"></td>
      </tr>
      <tr>
        <td class="frameLB"></td>
        <td class="frameB"></td>
        <td class="frameRB"></td>
      </tr>
    </table>
------------------------------------------------------------------------------------
 

【Asp.netでのGoogle Maps Apiの利用方法】

1.ライセンスの取得
  以下のURLよりAPIキーを取得する
  http://code.google.com/intl/ja/apis/maps/
  ※利用サイトURLと動作URLが異なると正しく
    動作しないので注意
  ※APIキーは、<script src></script>タグで囲われた
    部分になるので控えていたほうが良い

2.画面の設定
  GoogleMapを表示させたいページに以下のコントロールを
  設置しプロパティを設定する
  ①ScriptManager
    Scriptsにメンバを追加し、PathにAPIキーを設定する
  ②Panel
    Height,Widthに任意の値を設定
    ※設定しないとGoogleMapが表示されない

3.スクリプトの設定
  以下のソースを貼り付け

 [緯度・経度で指定する場合]
  ─────────────────────────────────
    var map = null;

    // ページ・ロード時に呼び出されるイベント・ハンドラ
    function pageLoad() {

      // 使用しているブラウザがGoogleマップに対応しているかを判定
      if (GBrowserIsCompatible) {

        // 「id=gmap」で定義された領域に地図を表示
        //(ナビゲーションや表示位置、種類を定義)
        map = new GMap2($get('pnlMap'));
        map.addControl(new GLargeMapControl());
        map.addControl(new GMapTypeControl());
        var point = new GLatLng(" + latitude + ", " + longitude +
        var marker = new GMarker(point);
        map.setCenter(point, 17);
        map.setMapType(G_NORMAL_MAP);  
        map.addOverlay(marker);  

        var builder = new Sys.StringBuilder();
        builder.append('<a href=""' + result.Url + '"">');
        builder.append(result.Place + '</a><br />');
        builder.append('" + hotelname + "');

        // マーカをクリックした場合に、バルーンを表示
        GEvent.addListener(
          marker,
          'click',
          function(){
            marker.openInfoWindowHtml(builder.toString());
          }
        ); 
      }
    }
  ─────────────────────────────────

 [住所で指定する場合]
--------------------------------------------------------------------------------
    var map = null;
    // ページ・ロード時に呼び出されるイベント・ハンドラ
    function pageLoad() {
      // 使用しているブラウザがGoogleマップに対応しているかを判定
      if (GBrowserIsCompatible) {
        // 「id=gmap」で定義された領域に地図を表示
        //(ナビゲーションや表示位置、種類を定義)
        map = new GMap2($get('pnlMap'));
        map.addControl(new GLargeMapControl());
        map.addControl(new GMapTypeControl());
        var geocoder = new GClientGeocoder();
        geocoder.getLatLng(
            '"+ address +"',
            function(point) {
                if(!point){
                    alert('住所情報が正しくありません。');
                }else{
                    var marker = new GMarker(point);
                    map.setCenter(point, 17);
                    map.setMapType(G_NORMAL_MAP);  
                    map.addOverlay(marker);  
                    var builder = new Sys.StringBuilder();
                    builder.append('" + hotelname + "');
                    // マーカをクリックした場合に、バルーンを表示
                    GEvent.addListener(
                      marker,
                      'click',
                      function(){
                        marker.openInfoWindowHtml(builder.toString());
                      }
                    ); 
                }
            }
        );
      }
    }
--------------------------------------------------------------------------------

 

【ASP.net Ajaxを利用する】

1.ASP.NET AJAXのダウンロード
 以下の公式サイトからASP.NET AJAXのインストール・パッケージをダウンロードする
 http://ajax.asp.net/
 ※ASP.NET 3.5(Visual Studio 2008)では標準インストールされる

2.AjaxControlToolkitのダウンロード
 以下のサイトからAjaxControlToolkit-Framework3.5.zipをダウンロードする
 http://www.asp.net/ajax/
 http://www.codeplex.com/AjaxControlToolkit/Release/ProjectReleases.aspx?ReleaseId=11121
 ※上はServicePack,下は2008.2.22のリリースバージョン

2.配置
 AjaxControlToolkit-Framework3.5.zipを展開し、
 「/SampleWebSite/bin」フォルダの中にある「AjaxControlToolkit.dll」(アセンブリ)を、
 自分が作っているアプリケーションルート配下の「/bin」フォルダにコピーします。

3.ツールボックス登録
 上記配置したファイルを参照しツールボックスへコントロールを登録する
 対象:Accordion.AccordionPane

4. Control Toolkitのコントロール群をアプリケーションに登録する
 次に、Control Toolkitで提供されるコントロールを利用するための設定をWeb.configに対して記述する。

 <?xml version="1.0"?>
 <configuration>
   ……中略……
   <system.web>
      ……中略……
     <pages>
       <controls>
          ……中略……
         <add tagPrefix="ajaxToolkit" namespace="AjaxControlToolkit" assembly="AjaxControlToolkit"/>
          ……中略……
       </controls>
       ……中略……
     </pages>
      ……中略……
   </system.web>
   ……中略……
 </configuration>

5.テンプレートの登録
 Control Toolkitのアーカイブを解凍すると、配下に「AjaxControlExtender」フォルダというフォルダが展開されるので、
 この中に含まれるAjaxControlExtender.vsiファイルをダブルクリックすればよい。
 

 

【GAC[Global Assembly Cache]の一覧及び登録】

GACにアセンブリをインストールするには、2つ方法がある
1.エクスプローラを使って、GACにファイルをドロップする方法
  C:\WINDOWS\assembly[WINDOWS⇒%System%]
2.VS2XXX コマンドプロンプト上で以下のコマンドを実行する
  gacutil -i アセンブリファイル名
  ※因みに削除は以下のコマンド
  gacutil -u アセンブリ名

 

PAGE TOP