जवाब के लिए और अधिक स्पष्टीकरण जोड़ना: एक बात प्रलेखन का वर्णन करता है कि यहाँ उल्लेख नहीं है कि रिश्तेदार को बदलने OnOrientationChanged स्थिति में समायोजित किया जाता है है। एक और अंतर यह है कि सापेक्ष परिवर्तन XAML में निर्दिष्ट नहीं है।
डॉक्स (How to: Create a Base Camera Application for Windows Phone) में, आयत videobrush साथ इस प्रकार भर जाता है:, में
<!--Camera viewfinder >-->
<Rectangle Width="640" Height="480"
HorizontalAlignment="Left"
x:Name="viewfinderContainer">
<Rectangle.Fill>
<VideoBrush x:Name="viewfinderBrush" />
</Rectangle.Fill>
</Rectangle>
तो कोड-पीछे, OnOrientationChanged घटना आयत रुचि के आधार पर घूमता है:
// Ensure that the viewfinder is upright in LandscapeRight.
protected override void OnOrientationChanged(OrientationChangedEventArgs e)
{
if (e.Orientation == PageOrientation.LandscapeRight)
{
viewfinderBrush.RelativeTransform =
new CompositeTransform() { CenterX = 0.5, CenterY = 0.5, Rotation = 180 };
}
else
{
viewfinderBrush.RelativeTransform =
new CompositeTransform() { CenterX = 0.5, CenterY = 0.5, Rotation = 0 };
}
base.OnOrientationChanged(e);
}
इस विषय में कोड (जो नमूना के अनुरूप है) केवल लैंडस्केप ओरिएंटेशन का उपयोग करने के लिए कॉन्फ़िगर किया गया है, शायद यही कारण है कि आप केवल लैंडस्केप छवियां प्राप्त कर रहे हैं (?) शुरुआत में, निम्न विशेषताओं को फ़ोन में जोड़ा गया है: फोन एप्लिकेशंस पेज ई MainPage.xaml में lement:
SupportedOrientations="Landscape" Orientation="LandscapeLeft"
आप अभी भी गलत तरीके से केंद्रित छवियों मिल रहे हैं, अपने पीसी के लिए अपनी छवियों को सिंक और वे सही ढंग से उन्मुख कर रहे हैं उन्हें वहाँ देखते हुए (अपने पीसी पर) देखें। यह बीटा के साथ एक बग हो सकता है जो छवि को डिवाइस पर सही ढंग से दिखाई नहीं दे रहा है।
आशा है कि मदद करता है। चीयर्स
क्या आपने SuppoertedOrientations = "PortraitOrLandscape" सेट किया है? –
मैंने इसे पोर्ट्रेट –
पर सेट किया है इसका मतलब यह है कि यदि आप इसे PortraitOrLandscape पर सेट करते हैं तो इससे कोई फर्क नहीं पड़ता है? –