实例介绍
【实例简介】
在微信公众平台开发中,有些xml的提交,用这个工具,比较方便一些。
源码涉及到httpRequest的操作
【实例截图】
【核心代码】
public partial class frmMain : SkinForm
{
private Thread uiThread = null;
private SystemMenuNativeWindow _systemMenuNativeWindow;
private OwnerDrawSystemMenuHook _ownerDrawSystemMenuHook;
private MyOpaqueLayer m_OpaqueLayer = null;//半透明蒙板层MyOpaqueLayer
public frmMain()
{
InitializeComponent();
try
{
_ownerDrawSystemMenuHook = new OwnerDrawSystemMenuHook();
}
catch
{
;
}
cmdType.SelectedIndex = 0;
initval();
}
protected override void OnCreateControl()
{
base.OnCreateControl();
if (_systemMenuNativeWindow == null)
{
_systemMenuNativeWindow = new SystemMenuNativeWindow(this);
}
_systemMenuNativeWindow.AppendSeparator();
_systemMenuNativeWindow.AppendMenu(
1001,
"更多微信公众平台开发资讯",
delegate(object sender, EventArgs e)
{
});
}
private void cmdType_SelectedIndexChanged(object sender, EventArgs e)
{
var iIndex = cmdType.SelectedIndex;
switch (iIndex) {
case 0:
ShowPane(panelText);
break;
case 1:
ShowPane(panelImage);
break;
case 2:
ShowPane(panelVoice);
break;
case 3:
ShowPane(panelVideo);
break;
case 4:
ShowPane(panelLocation);
break;
case 5:
ShowPane(panelLink);
break;
default :
ShowPane(panelText);
break;
}
}
private void ShowPane(Panel panel) {
panelText.Hide();
panelImage.Hide();
panelVoice.Hide();
panelVideo.Hide();
panelLocation.Hide();
panelLink.Hide();
panel.Show();
}
private void artLogo_Click(object sender, EventArgs e)
{
}
private void but_setting_Click(object sender, EventArgs e)
{
FormVal form = new FormVal(this).FormParser();
WxRequest val = new RequestParser().Execute(form);
PostEntity entity = new BuilderProcess().Execute(val, form);
this.txtPost.Text = entity.StreamXml;
}
private void but_send_Click(object sender, EventArgs e)
{
String streamXmlPost = txtPost.Text.Trim();
String strServPath = txtServAddress.Text.Trim();
if (String.IsNullOrEmpty(streamXmlPost) || String.IsNullOrEmpty(strServPath))
return;
uiThread = new Thread(new ThreadStart(new SendMessageUiThread(this) { OnBeginComminucation = ComminucationBegin, OnEndComminucation = ComminucationComplate, OnChangeRiceveMsg = ChangeRiceveMsg }.Process));
uiThread.Start();
}
protected void ChangeRiceveMsg(String strStream) {
XmlFormat.Process(ref strStream, false);
txtRiceve.Text = strStream;
}
protected void ComminucationBegin() {
ShowOpaqueLayer(this, 200, true);
}
protected void ComminucationComplate()
{
HideOpaqueLayer();
}
/// <summary>
/// 显示遮罩层
/// </summary>
/// <param name="control"></param>
/// <param name="alpha"></param>
/// <param name="showLoadingImage"></param>
public void ShowOpaqueLayer(Control control, int alpha, bool showLoadingImage)
{
if (this.m_OpaqueLayer == null)
{
this.m_OpaqueLayer = new MyOpaqueLayer(alpha, showLoadingImage);
control.Controls.Add(this.m_OpaqueLayer);
this.m_OpaqueLayer.Dock = DockStyle.Fill;
this.m_OpaqueLayer.BringToFront();
}
this.m_OpaqueLayer.Enabled = true;
this.m_OpaqueLayer.Visible = true;
}
/// <summary>
/// 隐藏遮罩层
/// </summary>
public void HideOpaqueLayer()
{
if (this.m_OpaqueLayer != null)
{
this.m_OpaqueLayer.Enabled = false;
this.m_OpaqueLayer.Visible = false;
}
}
private void initval() {
this.txtServAddress.Text = "http://localhost/acc/wx/basic.ashx";
this.txtFromUserName.Text = "jw2100";
this.txtToUserName.Text = "v101081";
this.txtContent.Text = "hello";
}
}
标签: 微信
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明


网友评论
我要评论