wp7将html数据传递到Web浏览器控件中

时间:2012-08-29 09:56:57

标签: string windows-phone-7

我想在webBrowser.NavigateToString(varivale);中传递字符串变量 在这个变量中我存储了一个html源代码。 如何在此方法中传递变量?

我的代码是

string varible=<body>..<p>some text</p>..</body>;
webBrowser1.NavigateToString(variable);

查看我的实际代码:

JObject cityblog1 = (JObject)cityblog[0];
        string cityimg = (string)cityblog1["CityImage"];
        string  citydetail = (string)cityblog1["CityDetail"];
        //var  = (string)cityblog1["CityDetail"];

        City_Blog cb = new City_Blog();
        cb.CityImage = cityimg;
        cb.CityDetail = citydetail;
        lstcityblogdetail.Add(cb);
        setimg();


        webBrowser1.NavigateToString(ConvertExtendedASCII(citydetail));            

    }
    private static string ConvertExtendedASCII(string HTML)
    {
        string retVal = "";
        char[] s = HTML.ToCharArray();

        foreach (char c in s)
        {
            if (Convert.ToInt32(c) > 127)
                retVal += "&#" + Convert.ToInt32(c) + ";";
            else
                retVal += c;
        }

        return retVal;
    }

问题:

当我运行应用程序时,我的输出是控制器的所有标记,如&nbsp或等等。但我不想要那样。

1 个答案:

答案 0 :(得分:0)

所以,你是以正确的方式做到的。 http://blogs.msdn.com/b/mikeormond/archive/2010/12/16/displaying-html-content-in-windows-phone-7.aspx

我在您的代码中看到的唯一问题 - 您以错误的方式声明了varible

string varible = "<body>..<p>some text</p>..</body>";

你忘记了引号。

<强> UPD 试试这个:

var htmlCode = HttpUtility.HtmlDecode(citydetail);
webBrowser1..NavigateToString(ConvertExtendedASCII(htmlCode ));