0

Windows Phone 7 c Sharp で Web ブラウザ コントロールのフォント サイズをプログラムで増減する方法を教えてください。これは、Web ブラウザー コントロールにズーム機能を実装するために必要です。ここに私のコードがあります

 private void btn_zoomin_click(object sender, EventArgs e)
    {
        double fs = webBrowser1.FontSize;

        webBrowser1.FontSize = fs+10;
     }

しかし、フォントはまったく変更されていません。

あらゆる種類の助けをいただければ幸いです。どうもありがとう、ムナッツァ

4

3 に答える 3

2

はい、解決策があります。webBrowser の "InvokeScript" を使用して、html ページ内でスクリプトを起動してフォントを拡大できます。サンプルは次のとおりです。

webBrowser1.InvokeScript("ChangeFontSize","12");

TO DO : html 内のスクリプト:

 <script type="text/javascript">
        function ChangeFontSize(size) {
            .....
            ....
            return true;
        }
<script/>
于 2012-11-28T07:39:31.623 に答える
0

このように機能するはずはないと思います。

ユーザーは、Internet Explorer と同じようにズームインおよびズームアウトできますが、フォント サイズを変更することはできません。

技術的には、表示したい html ファイルを取得して解析し、フォントサイズがインラインで定義されている場合は、それを変更して新しい html ファイルを WebBrowser コントロールに表示することができますが、それは非常に難しいとは思いません。良いアイデア。

于 2012-07-06T07:25:29.257 に答える
0

WebBrowser.InvokeScript を使用する必要があります。

// Initial text size
int textSize = 100;

private void TextPlusOnClick(object sender, EventArgs e)
{
    textSize *= 2;
    string szfn = "{styleText = \"body { -ms-text-size-adjust:" + textSize + "% }\";styleTextNode = document.createTextNode(styleText);styleNode = document.createElement(\"style\");styleNode.appendChild(styleTextNode);document.getElementsByTagName(\"head\")[0].appendChild(styleNode);};";
    webBrowser.InvokeScript("eval", szfn);
}

private void TextMinusOnClick(object sender, EventArgs e)
{
    textSize /= 2;
    string szfn = "{styleText = \"body { -ms-text-size-adjust:" + textSize + "% }\";styleTextNode = document.createTextNode(styleText);styleNode = document.createElement(\"style\");styleNode.appendChild(styleTextNode);document.getElementsByTagName(\"head\")[0].appendChild(styleNode);};";
    webBrowser.InvokeScript("eval", szfn);
}

テキスト サイズ調整プロパティの説明MSDN のこの投稿を参照してください。

于 2013-12-07T22:14:39.100 に答える