سلام
سوالم در رابطه با c# تحت وب است
بنده یه textbox دارم میخواستم بدونم چطور میتوانم در کلاس textbox مقدار دهی کنم یا مقداری از textbox بگیرم
همینطور برای listbox و لیبل
Printable View
سلام
سوالم در رابطه با c# تحت وب است
بنده یه textbox دارم میخواستم بدونم چطور میتوانم در کلاس textbox مقدار دهی کنم یا مقداری از textbox بگیرم
همینطور برای listbox و لیبل
سلامنقل قول:
[PHP]
public class Strings
{
public static string Texts { get; set; }
}
private void button17_Click(object sender, EventArgs e)
{
// set data for Texts
Strings.Texts = "Value";
// Get data from Class Strings
TextBox textbox = new TextBox();
textbox.Text = Strings.Texts;
// Get data from Class Strings
Label label = new Label();
label.Text = Strings.Texts;
// Get data from Class Strings
ListBox listbox = new ListBox();
listbox.Items.Add(Strings.Texts);
} [/PHP]
ممنون ولی من هر چی تست کردم نشد عمل نمیکنه
اگر ممکنه سورس بنویسن برای مثال
بطور مثال یه سورس میخوام که یه متن داخل texbox1 وارد کنیم و بعد رو button کلیک میکنی توسط کلاس مقدار از texbox1 خوانده بشه و در texbox2 قرار داده بشه حتما میخوام توسط کلاس انجام بشه که با روش خواندن و مقدار دهی کنترل ها مثل textbox - listbox لیبل اشنا بشم
یا هر سورسی که میدونین بذارین فرقی نمیکنه چون هدفم اشنایی با روش خواندن و مقدار دهی کنترل ها مثل textbox - listbox لیبل است
کلا" میخوام تمام تغییرات تو کلاس انجام بشه تو فرم فقط کلاس فراخوانی بشه
شما لطف کن کدهایی رو که نوشتی اینجا قرار بده تا باهم بررسی کنیمنقل قول:
عزیز من اگر بلد بودم که مزاحم شما نمیشدم چون روش کار بلد نیستم
دوستان ممنون از راهنمایتون ولی این اون چیزی نبود که من میخوام
من میخوام تمام کارها در کلاس انجام بشم بطور مثال اینجوری(این کد در جهت رساندن مفهموم است)
کد فرم
کد:protected void add_Click(object sender, EventArgs e)
{
Class1 p = new Class1();
p.add();
}
و کد کلاس
کد:namespace WebApplication1
{
public class Class1
{
public Class1()
{
}
public void add()
{
textbox2.text=textbox1.text
}
}
}
میخوام در کلاس مستقیم با properties های toolbox های موجود در فرم(web form) ارتباط داشته باشم
بسم الله الرحمن الرحیم
با سلام
این روشی که شما فرمودید؛ مفهموم کپسوله رو در شی گرایی زیر سوال میبره. چراکه شما در کلاس Class1 قصد دارید به اشیای فرم textbox1 , textbox2 دسترسی داشته باشید.
موفق باشید.
بسم الله الرحمن الرحیم
با سلام
براتون مثال خیلی ساده ای زدم که با مفهوم شی گرایی بیشتر آشنا بشید.
صورت مسئله: می خواهیم طول و عرض مستطیل رو بگیریم و مساحت اون رو محاسبه کنیم:
ابتدا کلاسی برای مستطیل در نظر می گیریم؛ پراپتی های مستطیل عبارتند از طول و عرض. به شکل زیر تعریف میکنیم:
حالا کلاسی برای متدهای مستطیل در نظر می گیریم؛ در این مثال تنها متد محاسبه مساحت مستطیل رو در نظر گرفته و پیاده سازی می کنیم:کد:using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace testoop
{
class Rectangular
{
public int Length { get; set; }
public int Width { get; set; }
}
}
و نهایتا فرمی رو برای این کار در نظر میگیریم؛ 2 تا تکس باکس و یک باتوم در فرم طراحی می کنیم و در رویداد کلیک باتوم کد زیر رو می نویسیم:کد:using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace testoop
{
class RectangularControl
{
public int Area(Rectangular rectangular)
{
return rectangular.Length*rectangular.Width;
}
}
}
در اینجا یک نمونه از کلاس مستطیل (شی ای از کلاس مستطیل) می سازیم و به عنوان پارامتر به کلاس RectangularControl می دهیم تا در اون جا مساحت رو حساب کنیم.کد:using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace testoop
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnArea_Click(object sender, EventArgs e)
{
Rectangular rectangular=new Rectangular();
rectangular.Length = Convert.ToInt32(this.txtLength.Text);
rectangular.Width = Convert.ToInt32(this.txtWidth.Text);
RectangularControl rectangularControl=new RectangularControl();
int Area=rectangularControl.Area(rectangular);
MessageBox.Show(Area.ToString());
}
}
}
موفق باشید.:n16:
همین کدها با یه تغییر خیلی ریز میشه ریختش توی کلاس! :)....نقل قول:
public class Strings
{
public static string Texts { get; set; }
}
private void button17_Click(object sender, EventArgs e)
{
// set data for Texts
Strings.Texts = "Value";
// Get data from Class Strings
TextBox textbox = new TextBox();
textbox.Text = Strings.Texts;
// Get data from Class Strings
Label label = new Label();
label.Text = Strings.Texts;
// Get data from Class Strings
ListBox listbox = new ListBox();
listbox.Items.Add(Strings.Texts);
}
بعدشم، کلاستون رو لطفا توی تابع باتن ننویسید! :)....
کلاس رو بیرون از کلاس فرم و در داخل کتابخونه بنویسید که بتونین ازش استفاده کنین..