/ / एक ही स्क्रीन पोजीशन पर नया फॉर्म बनाएं - c #, wpf, फॉर्म, विनफॉर्म, लोकेशन

उसी स्क्रीन स्थिति पर नया फॉर्म बनाएं - सी #, डब्ल्यूपीएफ, फॉर्म, विनफॉर्म, स्थान

मैं उसी स्थान पर एक नया फॉर्म बनाना चाहता हूं। जब मैं इस कोड को कॉल करता हूं तो एक नया फॉर्म खुल जाता है, लेकिन एक अलग स्क्रीन स्थिति पर।

private void BtnAddForm_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.Tag = this;
form2.Location = this.Location;
form2.Show(this);
Hide();
}

मैंनें इस्तेमाल किया this.Location मेरे प्रथम रूप से स्थान प्राप्त करने के लिए लेकिन इसका कोई प्रभाव नहीं है।

उत्तर:

जवाब के लिए 2 № 1

आपको काम करने के लिए StartPosition संपत्ति को मैन्युअल में सेट करने की आवश्यकता है।

private void BtnAddForm_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.Tag = this;
form2.StartPosition = FormStartPosition.Manual;
form2.Location = this.Location;
form2.Show(this);
Hide();
}

जवाब के लिए 2 № 2

इसे इस्तेमाल करो। आशा मदद करती है

    private void BtnAddForm_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.Show(this);
form2.Tag = this;
form2.Location = this.Location;
Hide();
}

उत्तर № 3 के लिए 1

उपयोग form2.StartPosition = FormStartPosition.Manual;, आपको भी उपयोग करना चाहिए form2.Closed += (s, args) => this.Close(); इसे छिपाने के बाद मूल स्वरूप को बंद करने की कोशिश करें

Hide();
Form2 form2 = new Form2();
form2.Tag = this;
form2.StartPosition = FormStartPosition.Manual;
form2.Location = this.Location;
form2.Closed += (s, args) => this.Close();
form2.Show();

उत्तर के लिए 1 № 4

इसका उपयोग करके सबसे आसान तरीका है StartPosition फॉर्म की संपत्ति। फॉर्म दिखाए जाने से पहले इस संपत्ति को सेट किया जाना चाहिए। शो या ShowDialog विधि या आपके फ़ॉर्म के निर्माता को कॉल करने से पहले आप यह गुण सेट कर सकते हैं।

उदाहरण के लिए: form2.StartPosition = FormStartPosition.CenterParent