مشكلة مضيفا canvasses إلى stackpanel في التعليمات البرمجية في برنامج الأغذية العالمي

StackOverflow https://stackoverflow.com/questions/1205851

  •  05-07-2019
  •  | 
  •  

سؤال

ولدي نفس المشكلة بالضبط كما نقلت (اتخذت شكل <وأ href = "http://social.msdn.microsoft.com/Forums/en-US/silverlightdeveloper/thread/9ddb04ba-0f42-4716-9889-04103469cf25 "يختلط =" نوفولو noreferrer "> هنا ، ولكن ليس أجاب):

<اقتباس فقرة>   

وI إضافة عناصر تحكم إلى StackPanel عبر   StackPanel.Childrens.Add ().

     

ولكن ما أراه - جميع الضوابط وأضاف   بالنسبة لي، هي في نفس الموقف و   تتداخل مع بعضها البعض. انهم لا يجري   تخطيط داخل StackPanel.

     

وحتى StackPanel.UpdateLayout () يجلب   لي شيئا.

وأنا بالنسبة لي أحاول أن أضيف Canvases (نعم أنا لا حاجة إليها) إلى StackPanel. أي أفكار؟

هل كانت مفيدة؟

المحلول

هل وضعت الأحجام واضحة على اللوحات الخاصة بك؟ اللوحات لا حجم لتناسب مضمونها، وذلك ما لم يتم تحديد حجم قماش صراحة، عند وضع كل منهم في لوحة المكدس، ستظهر محتوياتها على رأس كل منهما الآخر، كما يشرح. وذلك لأن (0،0) موقف الذي يتم وضع الأطفال قماش بالنسبة للستكون أعلى يسار stackpanel (نفس النقطة لجميع اللوحات وجميع أطفالهم).

وحاول القيام بما يلي في Kaxaml لتسليط الضوء على الوضع:

<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
  <StackPanel>
    <Canvas>
      <TextBlock Text="Child of canvas one" />
    </Canvas>
    <Canvas>
      <TextBlock Text="Child of canvas two" />
    </Canvas>
  </StackPanel>
</Page>

وسترى سطرين من النص يتم فرضه على رأس واحد آخر.

والآن، جرب هذا:

<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
  <StackPanel>
    <Canvas Height="15">
      <TextBlock Text="Child of canvas one" />
    </Canvas>
    <Canvas Height="15">
      <TextBlock Text="Child of canvas two" />
    </Canvas>
  </StackPanel>
</Page>

وسترى التباعد التي تريدها.

وعلى أمل أن يساعد.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top