دسترسی به تکست بلاک داخل datatemplate
<DataGrid.RowDetailsTemplate >
<DataTemplate >
<StackPanel Orientation="Horizontal" HorizontalAlignment="Left">
<TextBlock FontSize="12" Margin="0,5,0,0" Text=" پرداخت هزینه: " />
<TextBlock x:Name="Onvan_hazine_for_Update" FontSize="12" Margin="0,5,5,0" Foreground="Green" Text="{Binding عنوان}" />
<TextBlock FontSize="12" Margin="0,5,0,0" Text=" به مبلغ: " />
<TextBlock x:Name="mablagh_hazine_for_Update" FontSize="12" Margin="0,5,5,0" Foreground="Green" Text="{Binding مبلغ}" />
<TextBlock FontSize="12" Margin="0,5,0,0" Text=" در تاریخ: "/>
<TextBlock x:Name="tarikh_hazine_for_Update" FontSize="12" Margin="0,5,5,0" Foreground="Green" Text="{Binding تاریخ}" />
<TextBlock x:Name="Cod_Hazine_For_Delete_OR_Update" FontSize="12" Margin="0,5,0,0" Foreground="Green" Text="{Binding کد}" Visibility="Hidden" />
<Button x:Name="btn_Delete_Hazine" Height="25" Click="btn_Delete_Hazine_Click" >
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon Kind="Delete" RenderTransformOrigin="1.444,0.556" />
</StackPanel>
</Button>
<Button x:Name="btn_Update_Hazine" Height="25" Margin="30,0,0,0" Click="btn_Update_Hazine_Click" >
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon Kind="Update" RenderTransformOrigin="1.444,0.556" />
</StackPanel>
</Button>
</StackPanel>
</DataTemplate>
</DataGrid.RowDetailsTemplate
سلام دوستان من این کد نوشتم
حالا میخوام از قسمت کد نویسی سی شارپ به تکست بلاک داخل datatemplate دسترسی داشته باشم
امکانش هست؟
نقل قول: دسترسی به تکست بلاک داخل datatemplate
نقل قول:
نوشته شده توسط
sajad.app
<DataGrid.RowDetailsTemplate >
<DataTemplate >
<StackPanel Orientation="Horizontal" HorizontalAlignment="Left">
<TextBlock FontSize="12" Margin="0,5,0,0" Text=" پرداخت هزینه: " />
<TextBlock x:Name="Onvan_hazine_for_Update" FontSize="12" Margin="0,5,5,0" Foreground="Green" Text="{Binding عنوان}" />
<TextBlock FontSize="12" Margin="0,5,0,0" Text=" به مبلغ: " />
<TextBlock x:Name="mablagh_hazine_for_Update" FontSize="12" Margin="0,5,5,0" Foreground="Green" Text="{Binding مبلغ}" />
<TextBlock FontSize="12" Margin="0,5,0,0" Text=" در تاریخ: "/>
<TextBlock x:Name="tarikh_hazine_for_Update" FontSize="12" Margin="0,5,5,0" Foreground="Green" Text="{Binding تاریخ}" />
<TextBlock x:Name="Cod_Hazine_For_Delete_OR_Update" FontSize="12" Margin="0,5,0,0" Foreground="Green" Text="{Binding کد}" Visibility="Hidden" />
<Button x:Name="btn_Delete_Hazine" Height="25" Click="btn_Delete_Hazine_Click" >
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon Kind="Delete" RenderTransformOrigin="1.444,0.556" />
</StackPanel>
</Button>
<Button x:Name="btn_Update_Hazine" Height="25" Margin="30,0,0,0" Click="btn_Update_Hazine_Click" >
<StackPanel Orientation="Horizontal">
<materialDesign:PackIcon Kind="Update" RenderTransformOrigin="1.444,0.556" />
</StackPanel>
</Button>
</StackPanel>
</DataTemplate>
</DataGrid.RowDetailsTemplate
سلام دوستان من این کد نوشتم
حالا میخوام از قسمت کد نویسی سی شارپ به تکست بلاک داخل datatemplate دسترسی داشته باشم
امکانش هست؟
سلام بهترین کار استفاده از Binding هستش در هر صورت شاید این کد کارتون راه بندازه
StackPanel temp = datagrid.SelectedItem as StackPanel;
var textBlock = temp.Children[0] as TextBlock;
نقل قول: دسترسی به تکست بلاک داخل datatemplate
سلام دوست قدیمی
فکر کنم طرز تفکر در پیاده سازی شما یکم اشتباه داره و هنوز مثل من مانند ویندوز فرم باهاش رفتار میکنیم.
چون تمام این اشیا به ازای هر رکورد تکرار میشه پس بهتره که به کلاس مدل ات یک پروپرتی اضافه کنی و اون رو بایند کنی به اون پروپرتی مدنظرت و مقدار اون ردیف رو هم داده باشی بهش همون رفتار رو هر رکورد برات انجام میده.
من هم همین مشکل رو با گرید دیو دارم و پیچیده تر از این هم بود ولی با پروپرتی اضافه و بایند کردن درست شد. فقط مشکل اینجاست اگه من 1 میلیون رکورد داشته باشم و بعد خوندنش از پایگاه داده بخوام تک تک رکورد ها رو یک پروپرتی خواص مقدار بدم خودش کلی زمان سیستم رو اشغال میکنه راحی وجود داره این مشکل حل بشه؟!