私はテキストボックス、コマンドボタンといくつかのタイマーを持つ単純なフォームを持っています。フォームの唯一の目的は、何が起こっているのかをユーザーに知らせることです。プログラムは、必要に応じてすべてのコードを実行しますテキストボックスの変更を除いて。私はフォームとコマンドボタンのプロパティが必要に応じて変更されるため、テキストボックスの変更を実装するコードが実行されることがわかります。C#テキストボックスのプロパティが更新されません
this.refreshとthis.textbox1.refreshを無駄に追加しました。
私はC#の初心者です。ほとんどの場合、私はVisual Studiosを利用できませんので、あなたの支援が最も高く評価されます。私はこのトピックに関する他の記事を読んできましたが、おそらく答えはすでに与えられていますが、私は解決策を理解していません。 、@DavidGが指摘したように、あなたが定期的に、あるいは複数回、その後InitializeComponent()
を呼び出すべきではありません
//PROGRAM.CS
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
using System.Web;
using System.Windows.Forms;
using WindowsFormsApplication1;
namespace PostBinaryFile
{
static class Program
{
/// The main entry point for the application.
[STAThread]
static void Main(string[] args)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1(args));
}
}
}
//FORM1.CS
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
using System.Web;
using System.Net;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
string sUrl;
string sFileName;
string sCorNo;
public Form1(string[] args)
{
sUrl = args[0];
sFileName = args[1];
sCorNo = args[2];
InitializeComponent();
timer1.Enabled = true;
timer1.Start();
timer2.Enabled = true;
timer2.Start();
}
public void PostCode()
{
InitializeComponent();
string sToken;
string sPath;
const string boundary = "----WebKitFormBoundaryePkpFF7tjBAqx29L";
try
{
//Do all general code work here.
//Alter form to show successful post to web
this.button1.Visible = true;
this.button1.Enabled = true;
this.BackColor = System.Drawing.Color.FromArgb(189,194,241);
this.textBox1.Text = sCorNo + " Outlook file saved to FuseDMS."; // this code is executed but is not reflected on the Form
this.textBox1.BackColor= System.Drawing.Color.FromArgb(189,194,241); // this code is executed but is not reflected on the Form
}
private void timer1_Tick(object sender, EventArgs e)
{
timer1.Stop();
timer1.Enabled = false;
PostCode();
}
private void timer2_Tick(object sender, EventArgs e)
{
timer2.Stop();
timer2.Enabled = false;
this.textBox1.Text = "Saving Message " + sCorNo + ".";
}
private void button1_Click(object sender, EventArgs e)
{
Application.Exit();
}
}
}
は、あなたが本当に 'のInitializeComponent()'すべてのタイマーチックに呼び出しする必要があります:あなたは、コードのその部分を取り除くの後にあなたの
PostCode
機能は、実際には、次のようになりますか?これがあなたのすべてのプロパティをリセットすることに気づいていますか? – DavidG問題を正しく解決した場合、テキストボックス内のテキストは、このコードを通して更新されません。 'this.textBox1.Text = "timer2のティックイベントが発生すると、メッセージ" + sCorNo + "。";それは...ですか? – RBT