كيف يمكننا تغيير مؤشر ض عنصر تحكم سيلفرلايت برمجيا؟
-
05-07-2019 - |
سؤال
ولدي بعض الضوابط وأضاف في stackpanel برمجيا. ما أريد القيام به هو أنني أريد واحدة من ضوابط في هذا stackpanel لتوضع على عنصر تحكم آخر. على وجه التحديد، أريد أن وضع زر فوق صورة في هذا الفريق المكدس. لم أتمكن من العثور على الممتلكات zindex في ج # codebehind. على الرغم من أنه يبدو مشكلة بسيطة جدا ولكن أنا غير قادر على العثور على أي دليل على حل هذه المشكلة. أي شخص من فضلك ...... ؟؟
المحلول
وحاول وضع جميع الضوابط الخاصة بك على قماش. ثم يمكنك ضبط Zindex مع:
this.controlName.SetValue(Canvas.ZIndexProperty, 10d);
نصائح أخرى
وفقط لوحة Canvas
تدعم خاصية ZIndex
. Stackpanel لا لأنه يتم وضع كل عنصر واحد تلو الآخر في لوحة ولذلك يجب أن لا تتداخل مع بعضها البعض. وهذا يمكن أن يكون قليلا مزعج في بعض الأحيان عندما يكون لديك التحويلات المتحركة تحريك العناصر حوالي لأن الافتراض السابق ليس صحيحا في الواقع.
في عام رغم ذلك إذا كنت بحاجة لوضع العناصر في كومة البصري Stackpanel ليست المكان المناسب لذلك. ربما Canvas
أو هل يمكن استخدام Grid
حيث موقف oridinal عنصر يحدد لها "zorder" في خلية.
ومن XAML:
<StackPanel Canvas.ZIndex="1">
</StackPanel>