Conditional Formatting و دستور Select Case برای نمایش مقادیر در WPF
من توی یک دیتا گرید یک ستون دارم که مقادیرش از دیتابیس از جدول پر میشه و بین اعداد 0-1-2-3 متغیر هست .
کاری که میخوام انجام بدم اینه که از سمت سی شارپ یا XAML در درون دیتا گرید بگم محتوای هر سلول این ستون رو بررسی کن اگر عدد اون برار هست با 0 به جای عدد صفر کلمه "عادی" رو نمایش بده و به جای 1 "در حال ارسال" و......
مشابه همون کاری که برای ComboBox از طریق DisplayMemberPath و SelectedValuePath انجام میده رو میخوام برای یک TextColumn انجام بدم.
منتها این کدی که نوشتم کار نمیکنه :
XAML:
<DataGrid x:Name="MyDataGrid1" AutoGenerateColumns="False" EnableRowVirtualization="True" Margin="10" RowDetailsVisibilityMode="VisibleWhenSelected">
<DataGrid.Columns>
<DataGridTextColumn x:Name="nUMBERColumn" Binding="{Binding NUMBER}" Header="NUMBER" Width="SizeToHeader"/>
<DataGridTextColumn x:Name="VAZIYATColumn" Binding="{Binding VAZIYAT}" Header="TAMIR" Width="SizeToHeader">
<DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}">
<!--<Setter Property="HorizontalAlignment" Value="Right"/>-->
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=VAZIYAT,Path=Text, UpdateSourceTrigger=PropertyChanged}" Value="0">
<Setter Property="Text" Value="عادی"/>
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=VAZIYAT,Path=Text, UpdateSourceTrigger=PropertyChanged}" Value="1">
<Setter Property="Text" Value="در حال ارسال"/>
</DataTrigger>
</Style.Triggers>
</Style>
</DataGridTextColumn.ElementStyle>
</DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
آموزش استفاده از Select Case در Sql Server
چندین راه وجود داره برای این کار. در مجموع شما می تونید چه توی Sql Server و چه توی انتیتی فریم ورک از عبارت Select Case استفاده کنی.
توی دیتابیس یک View ایجاد کن و در این ویو یک فیلد جدید ایجاد کنید به صورت زیر :
SELECT Col1, Col2,
CASE
WHEN Col2 = 1 THEN 'عادی'
WHEN Col2 = 2 THEN 'در حال ارسال'
ELSE 'نامشخص'
END AS Col3
FROM Table;
در کوئری بالا که میتونه یک View در Sql Server باشه فیلد Col3 در واقع همون فیلد Col2 هست که به جای اعداد 1 و 2 و ... یک متن دلخواه درونش نوشتید. از این دستور در خود انتیتی فریم ورک هم میتونید استفاده کنید ولی بستگی داره Data Grid رو در WPF چجوری بایند کردید.
- آموزش استفاده از SignalR در Asp.net Core با مثال عملی
- ادغام چند گزارش استیمول سافت بصورت پی دی اف در یک فایل
- نحوه تغییر استایل کامپوننت select2 چگونه است ؟
- چگونه امنیت پروژه را در Asp.net Core افزایش دهیم ؟
- ارسال پارامتر در دستور window.open جی کویری
- ارسال پارامتر از طریق جاوااسکریپت با کلیک روی تگ a
- خطای 500 زمان اجرا شدن پروژه روی هاست
- کویری نویسی در استیمول سافت جهت فیلتر اطلاعات
- نمایش صفحه در پنجره جدید با کلیک روی لینک (تگ a) در Asp
- افزودن مقادیر به صورت دستی به List دریافت شده از ریپازیتوری
- مشکل تاریخ شمسی در سی شارپ
- نمایش گزارش stimulsoft روی کلاینت
- حذف کامل یک رکورد در جدول ریلیشن شده
- تفاوت های سی شارپ 8 با نسخه های قبلی چیه؟
- انتخاب چند سطر دلخواه توسط چک باکس در DataGrid و محاسبه جمع سطرهای انتخاب شده
- مقایسه ساختار دو دیتابیس در Sql Server
- اشکال در ایجاد کلید خارجی در Sql Server
- نمایش نوتیفکیشن در سی شارپ
- ارسال پارامتر از سی شارپ به استیمول سافت
- عدم نمایش عکس در دیتاگرید ویو در wpf