2010-03-17 12 views
77

मैं Height सी # कोड में एक WPF नियंत्रण की संपत्ति को Auto "पर कैसे सेट कर सकता हूं?कोड में WPF ऑटो ऊंचाई

<Grid.RowDefinitions> 
    <RowDefinition /> 
    <RowDefinition Height="Auto" /> 
    <RowDefinition /> 
    <RowDefinition Height="Auto" /> 
    <RowDefinition /> 
    <RowDefinition Height="Auto" /> 
    <RowDefinition /> 
    <RowDefinition Height="Auto" /> 
    <RowDefinition /> 
</Grid.RowDefinitions> 

मैं इस व्यवहार को पीछे कोड में पुन: पेश करना चाहता हूं। कोई विचार?

उत्तर

119

शायद this link आपकी मदद करेगा।

समय में, आप प्रोग्राम ऊंचाई या कोड में ऑटो के लिए एक WPF तत्व की चौड़ाई सेट कर सकते हैं। ऐसा करने के लिए, बस डबल.NAN (संख्या नहीं) मान का उपयोग करें।

उदाहरण के लिए, सी # में:

this.txtName.Width = Double.NaN;

+1

मेरे मामले में काम नहीं कर सकते हैं। लेकिन मैं व्यवहार के माध्यम से ऊंचाई चौड़ाई बदल रहा हूं (अभिव्यक्ति मिश्रण 4.0 lib) – Franck

+0

लिंक काम नहीं कर रहा है –

+1

लिंक मर चुका है लेकिन आप एक संग्रहीत संस्करण [यहां] तक पहुंच सकते हैं (http://web.archive.org/web/20131203203321/http: //msmvps.com/blogs/kevinmcneish/archive/2010/03/03/wpf-setting-the-height-or-width-to-auto-in-code.aspx) – akjoshi

78

आप का उपयोग

 
RowDefinition rd = new RowDefinition(); 
rd.Height = GridLength.Auto; 
ContentGrid.RowDefinitions.Add(rd); 
+7

इस उत्तर और स्वीकृत उत्तर के बीच कोई अंतर? क्योंकि यदि नहीं, तो ढांचे को रोकने के लिए यह शीर्ष जवाब होना चाहिए। – estebro

+1

परावर्तक के अनुसार, GridLength.Auto नया ग्रिडलाइट (1.0, GridUnitType.Auto) है; इसलिए स्वीकार्य उत्तर के बराबर बिल्कुल नहीं, लेकिन अधिक पढ़ने योग्य। – helios456

संबंधित मुद्दे