לאחר שקראתי היום את כל הפוסטים מליל שישי שמתי לב שחסר לי הסבר בשאלה ויתרה מזו אפי' טעות ...
אז אני יכתוב שוב את השאלה מחדש ומפורט יותר כדי שיהיה יותר ברור
- הטעות שלי הייתה במשמעות המילה אובייקט כאשר אני חשבתי שמדובר בשם כולל לחלקים מסויימים בטופס שאר הגולשים הבינו שמדובר במשתנה והצדק איתם (אי הבנה שלי במשמעות המילה נכון ע"כ זה סיבך את כולם כולל אותי [אע"פ שבזכות זה למדתי דברים חדשים
])
- ולגופו של שאלה
יש לי טופס בפרוייקט winForms ששמוForm1
בתוך הטופס יש לי תיבת טקסט בשםTextBoxCmd
.
בתוך הclass יש לי פונקציה סטטית שממנה אני רוצה לטפל בתיבת טקסט (לכתוב טקסט ולמחוק וכו') אמנם שאני ניגש לתיבת טקסט באופן הבא אני מקבל את השגיאה הבאה.
זה הפונקציה
public static void Shortcut(FileInfo file)
{
TextBoxCmd.Text = file.FullName;
}
וזו השגיאה
Severity Code Description Project File Line Suppression State
Error CS0120 An object reference is required for the non-static field, method, or property 'Form1.TextBoxCmd' SearchByTime C:\Users\uri\source\repos\SearchByTime\SearchByTime\Form1.cs 76 Active
וזה הclass המלא כעצת @Aharon-0
public partial class Form1 : Form
{
FolderBrowserDialog fbd;
//DateTime DMin;
//DateTime DMax;
public Form1()
{
InitializeComponent();
}
private void DateTimePicker1_ValueChanged(object sender, EventArgs e)
{
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void Label1_Click(object sender, EventArgs e)
{
}
private void SelectAFolder_Click(object sender, EventArgs e)
{
using (fbd = new FolderBrowserDialog())
{
DialogResult result = fbd.ShowDialog();
if (result == DialogResult.OK && !string.IsNullOrWhiteSpace(fbd.SelectedPath))
{
TextPath.Text = fbd.SelectedPath;
}
}
}
private void Search_Click(object sender, EventArgs e)
{
var all = new DirectoryInfo(fbd.SelectedPath).EnumerateFiles("*", new EnumerationOptions { RecurseSubdirectories = true });
foreach (var file in all)
Shortcut(file);
}
private void TextBoxCmd_TextChanged(object sender, EventArgs e)
{
}
/// <summary>
/// פונקצית פעולות על כל קובץ
/// </summary>
public static void Shortcut(FileInfo file)
{
Form1.TextBoxCmd.Text = file.FullName;
}
}
אני מקווה שעתה זה כתוב יותר ברור