2012-08-31 12 views
7

के माध्यम से डेटाग्रिड व्यू सेल एक्सेस करना तो मैं व्हाइट के साथ कुछ सी # ऑटोमेशन/यूआई परीक्षण कर रहा हूं और कुछ के साथ परेशानी हो रही है। मेरे पास ऐप में डेटाग्रिड व्यू है और मैंने पृष्ठभूमि स्थिति सेल रंग अलग-अलग आवेदन स्थिति के आधार पर सेट किया है। मैं व्हाइट का उपयोग करके परीक्षणों के दौरान इन रंगों को देखना चाहता हूं, लेकिन ऐसा करने में परेशानी हो रही है।व्हाइट

यहां मैं काम करने की कोशिश कर रहा हूं। मैं ग्रिड व्यू प्राप्त कर सकता हूं, लेकिन केवल एक टेबल के रूप में। फिर, मुझे बाद में समस्याएं हैं क्योंकि मैं DataGridViewCells के बजाय सादे TableCells के साथ समाप्त होता हूं।

var Table = MainWindow.Window.Get<Table>("DataGridViewName"); 
var Row = Table.Rows[0]; 
var Cell = Row.Cells[0]; 
//invalid 
//var Color = Cell.Style.BackColor; 

क्या कोई इस से पहले किसी भी सुझाव में है या कोई सुझाव है?

+0

आप ऐसा क्यों नहीं कर सकते: MainWindow.Window.Get ? – Marty

+0

हमम, शायद मैं सफेद के पुराने संस्करण पर हूं, लेकिन मुझे एक सफेद डेटाग्रिड व्यू घटक नहीं मिल रहा है। क्या वह आपके लिए संकलित करें? – sshannin

+2

यदि एप्लिकेशन आपका है, तो आप व्हाइट के साथ बेहतर एकीकरण करने के लिए अपने यूआई ऑटोमेशन समर्थन/क्षमताओं को बढ़ा सकते हैं (जो मुझे लगता है कि यूआई ऑटोमेशन का अधिकांश काम करने के लिए उपयोग करता है) –

उत्तर

1

क्या आप वाकई बैककलर को यूआई ऑटोमेशन के माध्यम से उजागर कर रहे हैं? मैंने निम्न स्तर के यूआई ऑटोमेशन कोडिंग से किया है, मैंने कभी ऐसी संपत्ति नहीं देखी है। मैंने बस इंस्पेक्ट (यूस्पी के समान) खोला और इसे सी # WinForms ऐप में DataGridView पर इंगित किया, और ऐसी कोई संपत्ति प्रकट नहीं हुई है।

इसलिए चूंकि ऐसा प्रतीत नहीं होता है, इसलिए इसे किसी छवि को कैप्चर करने से कम करने और कुछ थ्रेसहोल्ड (गड़बड़ की तरह लगता है) के साथ कुछ आधार रेखा से इसकी तुलना करने के लिए स्वचालन के माध्यम से इसे समझने का कोई तरीका नहीं है।

जब तक कि आप किसी अन्य ऑटोमेशन प्रॉपर्टी में जानकारी को एम्बेड नहीं कर सकते (जिसे परीक्षण के तहत ऐप बदलने की आवश्यकता होगी), मुझे ऐसा करने का कोई तरीका नहीं दिखता है। :(

+0

हाँ, यह एक तरह का निष्कर्ष मैं भी आया था। मैंने तत्व द्वारा परिभाषित क्षेत्र से दृश्यमान छवि को पकड़ लिया और इसके वास्तविक पिक्सेल को देखकर (मूल रूप से जैसा आपने सुझाव दिया)। – sshannin