2012-11-24 24 views
11

मेरे पास एक समूह बॉक्स में रेडियो बटन उदाहरण हैं।रेडियो बटन का मूल्य कैसे प्राप्त करें?

नर

महिला

मैं अपने कोड रेडियो बटन का चयन किया मूल्य प्राप्त करना चाहते हैं और स्ट्रिंग प्रकार चर कृपया सरल कोड कारण मीटर उपयोग करने के लिए इसे कॉपी बहुत पेशेवर नहीं

धन्यवाद

+1

के लिए एक commom ईवेंट हैंडलर का उपयोग करें आप रेडियो बटन मतलब है? –

+1

अरे @ कोडिंगमैश जिसे उन्होंने हर जगह 'अनुपात बटन' के रूप में संदर्भित किया है, वास्तव में इस तरह के किसी भी नियंत्रण के बारे में सोच रहा हूं! – sajanyamaha

+0

यह निश्चित रूप से एक प्रकार है, क्योंकि वह रेडियो बटन, नर मादा एक का उदाहरण देती है। –

उत्तर

18

जीत फार्म के लिए:

मूल्य प्राप्त करने के लिए (यह मानते हुए कि आप एक रेडियो बटन से मूल्य, पाठ नहीं चाहते हैं), आपको चेक की गई संपत्ति मिलती है:

string value = ""; 
bool isChecked = radioButton1.Checked; 
if(isChecked) 
    value=radioButton1.Text; 
else 
    value=radioButton2.Text; 

वेब फार्म के लिए:

और सीएस में कुछ बटन पर क्लिक करें

string value=rdoPriceRange.SelectedItem.Value.ToString(); 
5

आप अगर आप दो

if(rbMale.Checked) 
{ 

} 
else 
{ 

} 

है एक जांच करने की जरूरत है आप सभी चेकबॉक्स चेक करने की आवश्यकता है और अधिक तो दो

if(rb1.Checked) 
{ 

} 
else if(rb2.Checked) 
{ 

} 
else if(rb3.Checked) 
{ 

} 
+0

यदि आपके पास डिफ़ॉल्ट संपत्ति सेट नहीं है तो आपको दो की जांच करनी होगी। – Jesse

+1

विषय से बाहर निकलें, लेकिन चलिए प्रोग्राम सही तरीके से: आप "if (a == true)" क्यों जांचते हैं, यह बूलियन के लिए पर्याप्त नहीं है "if (a)"। आपकी विधि "if (a == true) {b = true;} else {b = false;}" जैसा वास्तव में आपका मतलब है "बी = ए;" –

1

आप भी अपनी radiobuttons के लिए एक आम घटना का उपयोग कर सकते हैं, और आप पारित करने के लिए Tag संपत्ति का उपयोग कर सकते आपकी स्ट्रिंग के लिए जानकारी या आप टेक्स्ट प्रॉपर्टी का उपयोग कर सकते हैं यदि आप चाहते हैं कि आपकी स्ट्रिंग आपके रेडियोबटन के टेक्स्ट के समान मूल्य रखे।

ऐसा कुछ।

private void radioButton_CheckedChanged(object sender, EventArgs e) 
{ 
    if (((RadioButton)sender).Checked == true) 
     sex = ((RadioButton)sender).Tag.ToString(); 
} 
1

मैंने पाया कि ऊपर वर्णित आम घटना का उपयोग कर अच्छी तरह से काम करता है और आप आम घटना इस तरह की स्थापना हो सकता है:

private void checkChanged(object sender, EventArgs e) 
    { 
     foreach (RadioButton r in yourPanel.Controls) 
     { 
      if (r.Checked) 
       textBox.Text = r.Text; 
     } 
    } 
बेशक

, तो आप में अन्य नियंत्रण नहीं हो सकता है आपके पैनल जो आप उपयोग करते हैं, लेकिन यह उपयोगी है अगर आपके पास अपने सभी रेडियो बटनों के लिए एक अलग पैनल है (जैसे कि समूह बॉक्स के अंदर एक उप पैनल का उपयोग करना या फिर आप अपने नियंत्रण व्यवस्थित करना पसंद करते हैं)

0

एक वैकल्पिक उपयोग करना है enum और एक घटक वर्ग जो मानक रेडियोबु को बढ़ाता है tton।

public enum Genders 
{ 
    Male, 
    Female 
} 

[ToolboxBitmap(typeof(RadioButton))] 
public partial class GenderRadioButton : RadioButton 
{ 
    public GenderRadioButton() 
    { 
     InitializeComponent(); 
    } 

    public GenderRadioButton (IContainer container) 
    { 
     container.Add(this); 

     InitializeComponent(); 
    } 

    public Genders gender{ get; set; } 
} 

GenderRadioButtons

private void Gender_CheckedChanged(Object sender, EventArgs e) 
{ 
    if (((RadioButton)sender).Checked) 
    { 
     //get selected value 
     Genders myGender = ((GenderRadioButton)sender).Gender; 
     //get the name of the enum value 
     string GenderName = Enum.GetName(typeof(Genders), myGender); 
     //do any work required when you change gender 
     switch (myGender) 
     { 
      case Genders.Male: 
       break; 
      case Genders.Female: 
       break; 
      default: 
       break; 
     } 
    } 
} 
संबंधित मुद्दे