वर्ग पुरालेख: XAML

ListboxItems की ऊंचाई में कोई सूची बॉक्स प्रोग्राम के जरिए विंडोज स्टोर App के लिए सेट करना

मैं एक विंडोज स्टोर आवेदन पर काम कर रहा हूँ और चीजें मैं app में क्या करना चाहते हैं में से एक है एक लॉग स्थिति संदेशों और अन्य सूचनात्मक tidbits पता चलता है कि उपयोगकर्ता चीजें काम करता है के रूप में प्रदर्शित करें. यह अंत करने के लिए, मैं एक ListBox में निम्नानुसार जोड़ा:

<ListBox एक्स:नाम ="GameStateLog" HorizontalAlignment ="केंद्र" ऊंचाई ="221" VerticalAlignment ="शीर्ष" चौड़ाई ="499" Padding ="0" फ़ॉन्ट आकार ="10">

 

रनटाइम पर सूची बॉक्स को पॉप्युलेट करने के लिए सी # कोड की लाइनों के साथ था:

GameStateLog.Items.Insert(0, GameStateCounter     + ": नए राज्य खेल: खिलाड़ी के लिए इंतजार कर 1 नाम");

यह काफी ठीक से काम किया, लेकिन UI व्यक्तिगत संदेश के आसपास padding के एक पागल राशि दिखाया के रूप में वे जोड़ी गईं. यदि मैं अंत उपयोगकर्ताओं को इन आइटम्स का चयन करने में सक्षम होना चाहते हैं लेकिन समझ नहीं पड़ता जब मैं बस चल रहे संदेशों की एक श्रृंखला लॉग को दिखाने के लिए चाहते हैं-इन उपयोगकर्ताओं का चयन नहीं होगा कि समझ में आता है, बस उन्हें देखने. यह आश्चर्य की बात है एक आसान तरीका है यह करने के लिए खोजने के लिए मुश्किल था और यकीनन, जिस तरह मैंने पाया यह जरूरी "आसान" नहीं है, लेकिन मैं यह ठीक काम कर रहा है. महत्वपूर्ण अंतर्दृष्टि से इस पोस्टिंग आया यहाँ (http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/c4a6f694-bd46-4779-ab83-b1c2fcb2397c) बॉब Relyea से. ListBox पर आइटम संग्रह करने के लिए तार जोड़ने के बजाय, ListBoxItems जोड़ें. एक स्ट्रिंग को जोड़ कर, सूची बॉक्स अपने आप ListBoxItem अपने आप ही पैदा कर रहा था. मैं उस ListBoxItem के बारे में कुछ तथ्य के बाद को प्रभावित करने में सक्षम नहीं था. नए कोड है:

        निजी शून्य AddGameStateLogMessage(स्ट्रिंग theMessage)
        {
            ListBoxItem ली = नई ListBoxItem();
            ली।सामग्री = theMessage;
            ली।MaxHeight = 25;

            मोटाई thisPadding = नई मोटाई(5, 0, 5, 0);
            ली।Padding = thisPadding;

            GameStateLog.Items.Insert(0,li);
        }

 

मैं ListBoxItem के यहाँ पैदा कर रहा हूँ और उन्हें डालने. मैं इसकी मोटाई की स्थापना करके अतिरिक्त पेडिंग हटाया.

यह बहुत लचीला है और सीधे ListBoxItems जोड़कर मैं उन्हें किसी भी तरह से मैं चाहता हूँ शैली को मिलता है मैं कुछ रंग कोडिंग के विशेष प्रकार के संदेश को हाइलाइट करने के लिए क्या करने का इरादा के रूप में.

आशा है कि यह किसी को मदद मिलती है!

</अंत>

undefinedमेरे ब्लॉग के लिए सदस्यता लें.

मेरे चहचहाना पर का पालन करें http://www.twitter.com/pagalvin