نمایش نتایج 1 تا 7 از 7

نام تاپیک: 1- تعریف Rectangle درون ResourceDictionary

  1. #1

    1- تعریف Rectangle درون ResourceDictionary

    با سلام
    من میخوام درون برنامه برای نمایش اطلاعات خاصی از Rectangle به صورت زیر استفاده کردم که در فایل پیوست ضمیمه شده

    برای راحتی کار میخواستم اون رو در یک ResourceDictioneary تعریف کنم که از دستور Rectangle به صورت زیر استفاده کردم

    <Style x:Key="NewRectangleShowData" TargetType="{x:Type Rectangle}">
    <Setter Property="Fill" Value="#FFF3F4F5"/>
    <Setter Property="RadiusX" Value="25"/>
    <Setter Property="RadiusY" Value="25"/>
    </Style>
    مشکلی که به وجود اومده اینه که نمیتونم اون رو بصورت زیر تعریف تا استایل مورد نظر رو براش تعریف کنم

    <Setter Property="Template">
    <Setter.Value>
    <
    </Setter.Value>
    </Setter>
    چه جوری میشه اینکار رو کرد
    همچنین اگر بخوام اون سه تا تکست باکس (سر تیتر، نمایش اطلاعات 1 و مشخصات) رو توری تعریف کنم که بتونم فونت، سایز، رنگ و ... رو در زمان استفاده درون برنامه تعریف کنم لازمه از استایلی جداگانه استفاده بشه یا میشه درون اون این استایل اونها رو هم تعریف کرد ممنون میشم اگه نحوه تعریف رو معین کنید
    اگر آموزشی در این رابطه وجود داره معرفی تا بتونم بخونم
    ممنون میشم راهنمایی کنید.
    فایل های ضمیمه فایل های ضمیمه

  2. #2

    نقل قول: 1- تعریف Rectangle درون ResourceDictionary

    نقل قول نوشته شده توسط MMRavari مشاهده تاپیک
    با سلام
    من میخوام درون برنامه برای نمایش اطلاعات خاصی از Rectangle به صورت زیر استفاده کردم که در فایل پیوست ضمیمه شده

    برای راحتی کار میخواستم اون رو در یک ResourceDictioneary تعریف کنم که از دستور Rectangle به صورت زیر استفاده کردم


    مشکلی که به وجود اومده اینه که نمیتونم اون رو بصورت زیر تعریف تا استایل مورد نظر رو براش تعریف کنم


    چه جوری میشه اینکار رو کرد
    سلام
    پروپرتی Template را فقط برای کلاس هایی از نوع Control (و فرزندانش) میتونین تعریف کنین چون این پروپرتی در کلاس Control تعریف شد (مثل Grid و Button یا هر شی ای از نوع کنترل) .
    کلاس Rectangle ، از نوع Control نیست . برای همین نمیتونین پروپرتی Template را براش تعریف کنید .

    ضمن اینکه اگه هدف تون از تعریف Rectangle اینه که ظاهر کنترل هاتون را مدیریت کنین و ظاهرشون را تغییر بدین ، برای این کار بهتر هه از کلاس های Decorator استفاده کنین که برای تغییر ظاهر و افکت گذاری روی المنت های فرزند طراحی شده .
    به عبارت دیگه ، بجای Rectangle ، بهتر هه از کلاس Border (که از نوع Decorator هست) استفاده کنین .


    نقل قول نوشته شده توسط MMRavari مشاهده تاپیک
    همچنین اگر بخوام اون سه تا تکست باکس (سر تیتر، نمایش اطلاعات 1 و مشخصات) رو توری تعریف کنم که بتونم فونت، سایز، رنگ و ... رو در زمان استفاده درون برنامه تعریف کنم لازمه از استایلی جداگانه استفاده بشه یا میشه درون اون این استایل اونها رو هم تعریف کرد ممنون میشم اگه نحوه تعریف رو معین کنید
    اگر آموزشی در این رابطه وجود داره معرفی تا بتونم بخونم
    ممنون میشم راهنمایی کنید.
    اول اینکه اگه میخواین پشت اون 3 تا متن ("سر تیتر"، "نمایش اطلاعات" و "مشخصات") ، یه پشت زمینه قرار بدین یا دورش یک حاشیه (Border) رسم کنین یا مخصوصا اینکه با تغییر یک پروپرتی ، مشخصاتِ این 3 متن تغییر کنن ، این 3 متن را درون یک کنترل تعریف کنین (به عنوان content ئه اون کنترل یا به عنوان child کنترل والد) .
    این طور اصولی نیست که Rectangle را جدا تعریف کنید و اون 3 تا متن (label) را هم به عنوان خواهر و برادرِ اون Rectangle تعریف کنید . ضمنا بجای label ، میتونید از TextBlock هم استفاده کنید (اگه به خصوصیاتِ کنترل از label بودن نیازی ندارید و صرفا میخواید متن ای را به نمایش در بیارید) :



    <Border Width="300" Height="200" CornerRadius="35" Background="#FFF3F4F5">
    <Border.Child>
    <GroupItem FontFamily="B Naznin" FontSize="32">
    <Grid Height="200" >
    <Grid.Resources>
    <Style TargetType="TextBlock">
    <Setter Property="HorizontalAlignment" Value="Center"/>
    <Setter Property="VerticalAlignment" Value="Center"/>
    </Style>
    </Grid.Resources>

    <TextBlock Margin="0,-50, 0, 0" >سر تیتر</TextBlock>
    <TextBlock FontSize="24" Margin="120,100, 0, 0" >نمایش اطلاعات </TextBlock>
    <TextBlock FontSize="24" Margin="-180,100, 0, 0" >مشخصات</TextBlock>
    </Grid>
    </GroupItem>
    </Border.Child>
    </Border>


    البته میتونین بجای کد بالا ، یه کنترلی تعریف کنید که برای اون کنترل ، یه template تعریف کنید و احتمالا نیازش به کد ، کمتر از این میشه یا هر کنترل و ساختار دیگه ای را که مناسب دیدین طبق نیازتون تعریف کنین .

  3. #3

    نقل قول: 1- تعریف Rectangle درون ResourceDictionary

    ممنون دوست عزیز
    من برای راحتی کار از Border استفاده کردم و مشکلم تا حدودی حل شد
    کلأ برای ساخت UserControl یا ResourceDictionery کتابی
    یا سایتی رو میشناسی
    ممنون میشم راهنمایی کنی
    با سپاس

  4. #4

    نقل قول: 1- تعریف Rectangle درون ResourceDictionary

    خواهش میشود .
    سایت اصلی مایکروسافت ، کامل توضیح میده .

    همچنین سایت c-sharpcorner.com ، مطالب خوبی برای آموزش داره .
    سایت wpf-tutorial.com هم هر چند خیلی خوب نیست ولی شاید بد هم نباشه.

    ضمنا ،سیستم wpf جوری هه که خیلی کم پیش میاد که کسی به user control و custom control و کمپوننت های شرکت های دیگه نیاز پیدا کنه . با همین سیستم content و child در المنت ها میشه نیازها را برطرف کرد . مخصوصا اگه control template و data template را استفاده کنید .


  5. #5

    نقل قول: 1- تعریف Rectangle درون ResourceDictionary

    ممنونم
    ولی مشکل اصلی اینه که برای آموزش چیز زیادی وجود نداره
    به هر حال لطف کردی به سایتی که گفتی سر میزنم
    ممنون

  6. #6

    نقل قول: 1- تعریف Rectangle درون ResourceDictionary


  7. #7

    نقل قول: 1- تعریف Rectangle درون ResourceDictionary

    بسیار سپاسگذلرم

تاپیک های مشابه

  1. پاسخ: 0
    آخرین پست: سه شنبه 16 بهمن 1397, 16:16 عصر
  2. سوال: گرد نشدن لبه های دکمه جدید در قسمت ResourceDictionary
    نوشته شده توسط forodo در بخش WPF
    پاسخ: 8
    آخرین پست: پنج شنبه 13 شهریور 1393, 19:45 عصر
  3. سوال: مشکل با این دو ResourceDictionary
    نوشته شده توسط water_lily_2012 در بخش WPF
    پاسخ: 4
    آخرین پست: سه شنبه 08 اسفند 1391, 14:29 عصر
  4. سوال: به اشتراک گذاشتن ResourceDictionary بین سایر پروِژه های یک Solution
    نوشته شده توسط PetekDincos در بخش WPF
    پاسخ: 4
    آخرین پست: شنبه 07 بهمن 1391, 00:36 صبح
  5. اضافه کردن ResourceDictionary از پروژه دیگر به UserControl
    نوشته شده توسط pedram.11 در بخش WPF
    پاسخ: 8
    آخرین پست: پنج شنبه 05 بهمن 1391, 13:32 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •