मैं सी # और डब्ल्यूपीएफ में काम कर रहा हूं, दोनों के लिए बहुत नया है।व्यस्त लूप के दौरान मैं प्रगति कैसे प्रदर्शित करूं?
मेरे पास एक लूप है जो बाहरी स्रोत से बहुत सारे डेटा को पढ़ता है। प्रक्रिया में लगभग 20 सेकंड लगते हैं, और मैं उपयोगकर्ता को प्रगति दिखाना चाहता हूं। मुझे किसी भी फैंसी प्रोग्रेस बार की आवश्यकता नहीं है, इसलिए मैंने अपनी प्रगति को एक लेबल में प्लॉट करना चुना है जो "चरण 1/1000" कहेंगे, फिर "चरण 2/1000" आदि में बदलें।
मेरा कोड कुछ ऐसा दिखता है यह:
// "count" is the number of steps in the loop,
// I receive it in previous code
String countLabel = "/"+count.ToString();
for (i = 0; i < count; i++)
{
... do analysis ...
labelProgress.Content = "Step "+i.ToString()+countLabel
}
हालांकि, उस विश्लेषण के दौरान स्क्रीन "अटक गई" है और प्रगति आगे बढ़ने के रूप में दिखाई नहीं देती है। मैं अपने अतीत से सी ++ में इस व्यवहार को समझता हूं, जहां मेरे पास लूप से अधिसूचनाएं प्राप्त करने वाली प्रगति पट्टी, या पेंट/रीफ्रेश के कुछ रूप, या अपनी संदेश कतार को संसाधित करने के लिए विंडो/ऐप को मजबूर करने के लिए एक अलग थ्रेड होगा।
सी # में ऐसा करने का सही तरीका क्या है? मैं लेबल से बंधा नहीं कर रहा हूँ, इसलिए अगर एक सरल प्रगति-बार पॉपअप स्क्रीन मैं इस लेबल यह भी बहुत अच्छा होगा के बजाय इस्तेमाल कर सकते हैं ...
धन्यवाद
यह आप के लिए मदद की जा सकती है , ** 100% परीक्षण ** http://stackoverflow.com/a/42995210/6863414 –