C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

ユーザーコントロールをFormに貼り付けたい


(過去ログ 3 を表示中)

[トピック内 8 記事 (1 - 8 表示)]  << 0 >>

■2723 / inTopicNo.1)  ユーザーコントロールをFormに貼り付けたい
  
□投稿者/ もっとNET勉強中 二等兵(1回)-(2006/03/07(Tue) 11:45:56)

分類:[VB.NET] 


分類:[VB.NET] 

ユーザーコントロールで一通り作成したプログラムUserControl1をWindowsアプリケーションのFormに貼り付けたのですが、UserControl1_KeyDownイベントなどが走らないのですが、根本的に何か間違っているのでしょうか?

本来はにはWEBのIE上にこのユーザーコントロールを貼り付けたいと思っているのですが、テストでFormに張り付けたのに動かないで困っております。



0
引用返信 編集キー/
■2724 / inTopicNo.2)  Re[1]: ユーザーコントロールをFormに貼り付けたい
□投稿者/ もっとNET勉強中 二等兵(2回)-(2006/03/07(Tue) 14:39:00)

分類:[VB.NET] 

すみません。久々に.net使ってるので何かとてつもない勘違いしているのでしょうか?

新規にWindowsApplication1を作成してForm1にTextBox1〜TextBox3を適当に張り付けて

●Private Sub Form1_KeyPress(・・・) Handles Me.KeyPress
Me.TextBox1.Text = "a"
Me.TextBox2.Text = "b"
Me.TextBox3.Text = "c"
 End Sub
デバックでキーを適当に押しても●に止りません。何で?

それと
●Private Sub Form1_Load(・・・) Handles MyBase.Load
Me.TextBox3.Focus()
 End Sub
こちらの●には止りますが、TextBox3にフォーカスがいきません。何で?

どこかおかしいところがあるのでしょうか?


0
引用返信 編集キー/
■2725 / inTopicNo.3)  Re[2]: ユーザーコントロールをFormに貼り付けたい
□投稿者/ 魔界の仮面弁士 軍曹(66回)-(2006/03/07(Tue) 14:56:57)

分類:[VB.NET] 

> ●Private Sub Form1_KeyPress(・・・) Handles Me.KeyPress
> デバックでキーを適当に押しても●に止りません。何で?
まずは、KeyPreview プロパティの状態を確認してみましょう。


> ●Private Sub Form1_Load(・・・) Handles MyBase.Load
> Me.TextBox3.Focus()
>  End Sub
> こちらの●には止りますが、TextBox3にフォーカスがいきません。何で?
Load 中は通常、TextBox3 はおろか、Form1 すら表示されていない
状態なので、フォーカスは移動されません。下記のようにしてみてください。

(修正案1) 最初から、TextBox3.TabIndex = 0 にしておく。(コーディング不要)
(修正案2) 「ActiveControl = TextBox3」のようにする。
(修正案3) 表示されてから .Focus() する。

0
引用返信 編集キー/
■2726 / inTopicNo.4)  Re[3]: ユーザーコントロールをFormに貼り付けたい
□投稿者/ もっとNET勉強中 二等兵(3回)-(2006/03/07(Tue) 16:07:16)

分類:[VB.NET] 

魔界の仮面弁士様>KeyPreviewプロパティで解決しました。ありがとうございます。
あつかましいのですが、WindowsのFormコントロールはIE上で表示できないようなので、本当はWindowsのUserControlを張り付けたいのですが、UserControlクラスにはKeyPreviewプロパティがありません。

Enterキーでフォーカスを移動させなければならないのですが、これは到底無理なのでしょうか?


0
引用返信 編集キー/
■2727 / inTopicNo.5)  Re[4]: ユーザーコントロールをFormに貼り付けたい
□投稿者/ 魔界の仮面弁士 軍曹(67回)-(2006/03/07(Tue) 16:33:26)

分類:[VB.NET] 

> WindowsのFormコントロールはIE上で表示できないようなので、
IE で System.Windows.Forms.Form を使うのであれば、
コードアクセス許可が必要になってきます。

http://www.gotdotnet.com/japan/team/windowsforms/iesourcing.aspx
http://japan.internet.com/developer/20051220/25.html

# そういう意味じゃないかもしれないけど。


> Enterキーでフォーカスを移動させなければならないのですが
クライアントスクリプトで制御する、とか。
http://dobon.net/cgi-bin/vbbbs/cbbs.cgi?mode=al2&namber=14776&rev=&no=0

0
引用返信 編集キー/
■2728 / inTopicNo.6)  Re[5]: ユーザーコントロールをFormに貼り付けたい
□投稿者/ もっとNET勉強中 二等兵(4回)-(2006/03/07(Tue) 18:46:57)

分類:[VB.NET] 

魔界の仮面弁士様>System.Windows.Forms.FormクラスもIE上で表示できるのでしょうか?System.Windows.Forms.UserControlクラスでないと何度やっても表示されませんでした…

0
引用返信 編集キー/
■2821 / inTopicNo.7)  Re[6]: ユーザーコントロールをFormに貼り付けたい
□投稿者/ もっとNET勉強中 二等兵(5回)-(2006/03/13(Mon) 20:45:31)

分類:[VB.NET] 

すみません、どうしてもSystem.Windows.Forms.UserControlに張り付けた各コントロールをEnterキーでフォーカスを動かしていくという操作をしたいので、色々調べてみて
Protected Overrides Function ProcessCmdKey(ByRef msg As System.Windows.Forms.Message, ByVal keyData As System.Windows.Forms.Keys) As Boolean
Const WM_KEYDOWN As Integer = &H100

If msg.Msg = WM_KEYDOWN Then
If (keyData = Keys.Enter) Then
SelectNextControl(Me.ActiveControl, True, True, False, True)
Return True
End If
End If
Return MyBase.ProcessCmdKey(msg, keyData)

End Function
のようなソースをSystem.Windows.Forms.UserControlを継承したクラスに記述したのですが、そのクラスにTextBoxなど貼り付けたのですが、やはり上手くいかないようです。どこかおかしい箇所とかあるのでしょうか?
それともそのような操作は不可能でしょうか?どうぞよろしくお願いします。

0
引用返信 編集キー/
■2822 / inTopicNo.8)  Re[7]: ユーザーコントロールをFormに貼り付けたい
□投稿者/ もっとNET勉強中 二等兵(6回)-(2006/03/13(Mon) 21:01:20)

分類:[VB.NET] 

度々すみません。
上記ソースでうまくいきました。
IEのDLLのダウンロードのキャッシュのクリアがあまり上手くいってないようなのですが、基本的に
C:\Documents and Settings\ユーザー名\Local Settings\Application Data\assemblyのフォルダをそのまま削除すればよいのですか?

制御面は更新されているようなのですが、画面のデザインが上手くいっていないようなので…すみません。

0
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -