PDA

View Full Version : ارسال پیام در صورت تغییر محتویات TextBox



Arezoo62
دوشنبه 29 خرداد 1391, 13:41 عصر
دوستان یکTextBox تو فرمم دارم که یک رشته متغیر رو تو خودش به کاربر نشون میده
چون این رشته از سرور گرفته میشه ممکنه تغییر کنه یا نه

می خواهم اگه تکست این Textbox تغییر کرده بود نسبت به بار قبلی که کاربر این فرم و دیده بود یک Message ارسال بشه

hunter_ara
دوشنبه 29 خرداد 1391, 14:17 عصر
دوستان یکTextBox تو فرمم دارم که یک رشته متغیر رو تو خودش به کاربر نشون میده
چون این رشته از سرور گرفته میشه ممکنه تغییر کنه یا نه

می خواهم اگه تکست این Textbox تغییر کرده بود نسبت به بار قبلی که کاربر این فرم و دیده بود یک Message ارسال بشه

میتونید هر بار رشته رو تو رجیستری یا هر جای دیگه ذخیره کنید و موقع لود فرم با مقدار قبلی مقایسه کنید!
اگر تغییر کرده بود ا پیام به یوزر نشون بدین و مقدار جدید رو جایگزین قبلی کنید!

Arezoo62
دوشنبه 29 خرداد 1391, 15:02 عصر
میشه یه مثال ساده و اصولی بزنید

ahmadreza517
دوشنبه 29 خرداد 1391, 15:27 عصر
به نام تنها برنامه نویس هستی
سلام ,

می تونید از setting پروژه استفاده کنید.

hunter_ara
دوشنبه 29 خرداد 1391, 15:30 عصر
میشه یه مثال ساده و اصولی بزنید

private void Form1_Load(object sender, EventArgs e)
{
string Lastval = Registry.GetValue(@"HKEY_CURRENT_USER\Software", "yourAppLastValue", "").ToString();
if (textBox1.Text != Lastval)
MessageBox.Show("textbox value has been changed");
Registry.SetValue(@"HKEY_CURRENT_USER\Software\yourAppLastValue", textBox1.Text, RegistryValueKind.String);
}

Arezoo62
دوشنبه 29 خرداد 1391, 16:25 عصر
به نام تنها برنامه نویس هستی
سلام ,

می تونید از setting پروژه استفاده کنید.
ممنونم
یه مقدار سخت بود

Arezoo62
دوشنبه 29 خرداد 1391, 16:35 عصر
private void Form1_Load(object sender, EventArgs e)
{
string Lastval = Registry.GetValue(@"HKEY_CURRENT_USER\Software", "yourAppLastValue", "").ToString();
if (textBox1.Text != Lastval)
MessageBox.Show("textbox value has been changed");
Registry.SetValue(@"HKEY_CURRENT_USER\Software\yourAppLastValue", textBox1.Text, RegistryValueKind.String);
}

ببخشید من از کد شما استفاده کردم و فضای نام
using microsoft.win32
رو اضافه کردم

محتویات Textbox تغییر کرد اما message ارسال نشد!

hunter_ara
دوشنبه 29 خرداد 1391, 18:11 عصر
ببخشید من از کد شما استفاده کردم و فضای نام
using microsoft.win32
رو اضافه کردم

محتویات Textbox تغییر کرد اما message ارسال نشد!

خب شما اینا رو باید بعد از دریافت اطلاعات از سرور و پر کردن تکست باکس بنویسی!
و کدت باید حد اقل 2 بار اجرا بشه تا بار اول مقدار تکست باکس تو رجیستری ذخیره بشه!
ضمنا شما خود رجیستری رو هم چک میکنی که هر بار مقدار ذخیره یا عوض میشه یا نه؟؟؟

Arezoo62
دوشنبه 29 خرداد 1391, 18:20 عصر
کدهای شما رو بعد از کدهای دریافت اطلاعات از سرور گذاشتم
حالا هر موقع اجرا می کنم اون message ارسال میشه

نه چک نمی کنم
فقط از کدهای شما استفاده کردم

hunter_ara
دوشنبه 29 خرداد 1391, 18:56 عصر
کدهای شما رو بعد از کدهای دریافت اطلاعات از سرور گذاشتم
حالا هر موقع اجرا می کنم اون message ارسال میشه

نه چک نمی کنم
فقط از کدهای شما استفاده کردم

حق با شماس
کد 1 ذره غلط بود :خجالت:

private void Form1_Load(object sender, EventArgs e)
{
string Lastval = Registry.GetValue(@"HKEY_CURRENT_USER\Software\yourAppLastValue", "A", "").ToString();
if (textBox1.Text != Lastval)
MessageBox.Show("textbox value has been changed");
Registry.SetValue(@"HKEY_CURRENT_USER\Software\yourAppLastValue", "A", textBox1.Text);
}

الان درستش کردم!
جایگزین کد قبل کنین 100% درسته :چشمک:
---------------
البته اون که وسطش به اندازه ی 1 تب فاصله میفته تقصیر من نیست!
خود تگ C# فاصله میندازه :ناراحت: