PDA

View Full Version : دریافت نام کاربری و استفاده از ان در تمامی فرم ها



boysilent
چهارشنبه 11 دی 1392, 02:46 صبح
سلام دوستان عزیز میخواستم ببینم پطوری میشه یه متغیر رو سراسری تعریف کرد که یه مقدار رو نگه داره در تمام صفحات؟

hamid_0341
چهارشنبه 11 دی 1392, 07:06 صبح
یه کلاس تعریف کن و مقدار رو موقع لاگین بریز توش دیگه همه جا میتونی ازش استفاده کنی

Davidd
چهارشنبه 11 دی 1392, 07:50 صبح
public class UserName
{
static string _userName;
public static string CurrentUserName
{
set { _userName = value; }
get { return _userName; }
}
}

هر جا خواستي ميتوني به UserName.CurrentUserName دسترسي داشته باشي

boysilent
چهارشنبه 11 دی 1392, 08:02 صبح
ممنون از جوابهاتون ولی من قبلا بدون کلاس اینکاررو انجام دادم .ولی دقیقا یادم نیست چطوری بود فک کنم با متغیر گلوبال بودش؟

hamid_0341
چهارشنبه 11 دی 1392, 08:09 صبح
اونجوری هم میتونی ولی از این استفاده کنی که راحت تری !!!
اون جوری توی فرم اصلیت یک متغیر public تعریف میکنی و یوزر رو میریزی توش!!
بعد هرجا که نیاز داشتی یک شی از اون فرمت میسازی و بعد از اون متغیر استفاده میکنی!!!

این متغیر فرم اصلیت
public string username;
هرجا هم خواستی ازش استفاده کنی اینجوریه
yourform f = new yourform ();
f.username = this.label1.text;

NasimBamdad
چهارشنبه 11 دی 1392, 09:18 صبح
به جای public از internal استفاده کن امنیتش بیشتره

boysilent
چهارشنبه 11 دی 1392, 11:19 صبح
همون کلاسا بهتره:لبخندساده: ولی خروجیش خالیه ؟؟؟
MessageBox.Show(username.CurrentUserName);

namespace ahanalat
{
class username
{
static string _userName;
public static string CurrentUserName
{
set { _userName = "alireza".ToString(); }
get { return _userName; }
}
}
}

Davidd
یک شنبه 15 دی 1392, 07:33 صبح
با اين كدي كه نوشتي معلومه بايد خالي باشي! متد set وقتي فراخواني ميشه كه يك مقدار در پروپرتي CurrentUserName قرار بدي. اين كدي كه نوشتي يعني هر بار به username.CurrentUserName مقدار بدي مقدارش ميشه "alireza" ولي هنوز به كه هيچ مقداري بهش ندادي!


public class UserName
{
static string _userName;
public static string CurrentUserName
{
set { _userName = value; }
get { return _userName; }
}
}
.
.
.

username.CurrentUserName="alireza";
MessageBox.Show(username.CurrentUserName);