मैं इस बारे में कई अन्य उत्तरों और उदाहरणों का अध्ययन कर रहा हूं और मैं इसे स्थापित करने के तरीके पर और अधिक उलझन में हूं। मुझे फॉर्म क्लास में performMove विधि के परिणाम के आधार पर रोबोट कक्षा में एक ईवेंट जुटाने की जरूरत है। मुझे पता है कि मैं इस कार्यक्रम को किसी अन्य वर्ग से नहीं बढ़ा सकता, इसलिए जो मैंने स्पष्ट रूप से काम नहीं किया है। लेकिन मैं वास्तव में इसे ठीक से सेट अप करने के तरीके को समझ नहीं रहा हूं। मैंने कोडप्रोजेक्ट, सपनेइनकोड, और इस साइट में कई अन्य लोगों के बीच प्रतिनिधियों और घटनाओं के लेख पढ़े हैं। यह अभी शुरुआत ग # वर्ग के लिए है, और मैं बहुत इस के लिए नया हूँ, के रूप में मुझे यकीन है कि हर किसी घटना को बढ़ाने के लिए :)घटना को बढ़ाने की कोशिश कर रहा है C#
namespace Assignment12
{
public delegate void ErrorHandler();
public partial class frmRobot : Form
{
Robot moveRobot = new Robot();
public frmRobot()
{
InitializeComponent();
reset_Position();
current_Position_Display();
moveRobot.outOfRange += new ErrorHandler(moveRobot.coor_Within_Range);
}
...
private void performMove()
{
Point loc = lblArrow.Location;
int x = moveRobot.Move_Robot_XAxis(loc.X);
int y = moveRobot.Move_Robot_YAxis(loc.Y);
if (x < -100 && x > 100)
{
moveRobot.outOfRange();
x = loc.X;
}
if (y < -100 && y > 100)
{
moveRobot.outOfRange();
y = loc.Y;
}
this.lblArrow.Location = new Point(x, y);
current_Position_Display();
}
class Robot
{
public event ErrorHandler outOfRange;
...
public void coor_Within_Range()
{
System.Console.WriteLine("TestOK");
}
}
क्या कोई त्रुटि है? – Josh
क्षमा करें, हाँ। PerformMove में, लाइन moveRobot.outOfRange() उठाता है "त्रुटि घटना 'Assignment12.Robot.outOfRange' केवल + = या - =" –
के बाईं ओर दिखाई दे सकती है प्रश्न क्या है? इस प्रश्न में कोई प्रश्न नहीं प्रतीत होता है, बल्कि सिर्फ यह बयान है कि आप नहीं जानते कि आप क्या करना चाहते हैं। क्या आप अधिक स्पष्ट रूप से वर्णन कर सकते हैं कि आप क्या करना चाहते हैं? उदाहरण के लिए, "मैं एक वर्ग पर एक विधि बनाना चाहता हूं, जिसे किसी अन्य वर्ग द्वारा बुलाया जाता है, पहली कक्षा को किसी ईवेंट को आग लगने का कारण बनता है"। –