HTML实时渲染:Winforms
本文关键字:Winforms 实时 HTML | 更新日期: 2023-09-27 18:12:53
作为一名学生,我正在尝试构建一个应用程序。然而,我遇到了一个困难。我想把我的申请分成两部分。第一个是有一个代码编辑器来输入HTML,另一个是实时显示页面的呈现。
第二部分如何制作?它应该为编辑器中的每次代码更改刷新视图。
我感谢所有能帮助我的人。(抱歉我的英语不好,我来自瑞士)。这其实很简单,如果你已经写出了你的html文件,你只需要添加浏览器控件。
当您在页面上有Web浏览器控件时,您需要给它一个要去的源url。
WebBrowser1.Navigate("location of your html file here");
现在取决于你保存html页面的位置,它需要从哪里捡起它。我建议你在页面上有一个文本框,它告诉应用程序在哪里保存文件,但也将服务器作为从哪里拾取html页面。
我不建议让页面更新每次你做出改变,我建议你有一个按钮,实际上为你做刷新,如果你使用TextChanged事件,你要调用你的页面每一个字符,而不是真正给它时间加载。
所以,每次保存,你都应该更新视图,而不是之前,否则你会给自己一个大问题。
你可以用一个多行文本框和一个WebBrowser控件创建一个简单的Winforms应用程序。只需按如下方式附加TextChanged事件:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
Size = new Size(800, 600);
mTextBox = new TextBox();
mTextBox.Multiline = true;
mTextBox.Font = new Font("Consolas", 10);
mTextBox.TextChanged += textbox_TextChanged;
mTextBox.Dock = DockStyle.Fill;
mTextBox.Height = 400;
Splitter splitter = new Splitter();
splitter.Dock = DockStyle.Bottom;
mWebBrowser = new WebBrowser();
mWebBrowser.Dock = DockStyle.Bottom;
Controls.Add(mTextBox);
Controls.Add(splitter);
Controls.Add(mWebBrowser);
mTextBox.Text = "<html>'r'n<h1>Testing!</h1>'r'n</html>";
}
void textbox_TextChanged(object sender, EventArgs e)
{
mWebBrowser.DocumentText = mTextBox.Text;
}
WebBrowser mWebBrowser;
TextBox mTextBox;
}