私は簡単な.net cfアプリケーション(vb.net .net 3.5 windows mobile 6.5)を開発しています。これは、フルスクリーンフォームでhtmlコンテンツを表示する必要があります。フレームワーク。 applictionをホストするデバイスの解像度は800×480ピクセルです。 アプリケーションには、Webブラウザーコンポーネントが完全にドッキングされており、他のコンポーネントは含まれていないフォームが表示されます。ロードイベントでは、フォームは単に、デバイスのSdカードにhtmlファイルの正しいURLをロードします。.netコンパクトなフレームワークのWebブラウザコンポーネントとhtmlコンテンツ
Private Sub frmLauncher_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
ShowHide.ShowTopStatusbar(False)
ShowHide.disableSoftwareKey()
ShowHide.SipShowIMP(0)
WebBrowserPanel1.WebBrowser.Url = New Uri("\home\index.html")
End Sub
私は、コントロールの奇妙な行動を経験している:
- HTMLコンテンツは、単一または複数の画像のセリエで構成されている場合、コントロールは右の解像度 でコンテンツを表示
- htmlコンテンツにtextやその他のhtmlコンポーネントがテーブルやdivとして含まれている場合、すべてがとなり、高さと幅がになります!
この現象を防止する方法はありますか? どのような回避策を使用できますか?
ありがとうございました。私の悪い英語のために申し訳ありません!
ps:いくつか実験した後、すべての次元(高さまたは幅)を値/ 2で置き換えるhtmlコンテンツのすべてのCSSを変更することを選択します。それは可能な解決策ですが、私の質問に答えることはありません!
親フォームのAutoScaleModeはどのように設定されていますか? – ctacke
AutoScaleMode =なし。しかし、最も奇妙なことは、画像がどのように処理されるかです.htmlには画像のみが含まれていれば、すべて問題ありません。私はこの種のHTMLを使うよりも正確に800 * 480ピクセルの画像を保存することを確認しました:
– pierusch「WebBrowser」がどのようにコンパクトフレームワーク上で動くのか不思議です。私が試したところ、現在のスレッドはシングルスレッドのアパートメントにはないので、 'ActiveXはインスタンス化できません。 'というエラーメッセージが表示されます。また、CFは '[STAThread]'ディレクティブでは実行できません。私は不可能だと思った。特別なことをしましたか? – bvdb