1-) C# RMOS - gridview seçilenlerin countunu yazdırma
kaynak : https://drive.google.com/file/d/1YBNZ5vaEvZCUIzfl-qveiMps7vX1gcOD/view?usp=sharing
using DevExpress.XtraEditors;
using System;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Windows.Forms;
using DevExpress.XtraGrid.Columns;
using DevExpress.XtraGrid.Views.Grid.ViewInfo;
using DevExpress.XtraGrid.Views.Grid;
using System.Reflection;
using DevExpress.XtraGrid.Views.Grid.Drawing;
using DevExpress.Utils.Drawing;
using DevExpress.XtraGrid.Views.Base;
namespace xRmosUpgrade{ public partial class Form1 : Form {
...
GridColumn gridResultFrstColumn;
private void Form1_Load(object sender, EventArgs e)
{
gridView_veriTab.OptionsSelection.MultiSelect = true;
gridView_veriTab.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CheckBoxRowSelect;
gridControl_veriTab.DataSource = dbtoolsAcentex.MyGetDataTable("SELECT name FROM master.dbo.sysdatabases WHERE name NOT IN ('master', 'tempdb', 'model', 'msdb');");
gridView_veriTab.PopulateColumns();
gridResultFrstColumn = gridView_veriTab.VisibleColumns[0];
gridResultFrstColumn.SummaryItem.SummaryType = DevExpress.Data.SummaryItemType.Custom;
gridView_veriTab.CustomDrawFooter += new DevExpress.XtraGrid.Views.Base.RowObjectCustomDrawEventHandler(gridView_veriTab_CustomDrawFooter);
gridView_veriTab.CustomDrawFooterCell += new DevExpress.XtraGrid.Views.Grid.FooterCellCustomDrawEventHandler(gridView_veriTab_CustomDrawFooterCell);
gridView_veriTab.SelectionChanged += new DevExpress.Data.SelectionChangedEventHandler(gridView_veriTab_SelectionChanged);
gridView_veriTab.BestFitColumns();
}
void gridView_veriTab_SelectionChanged(object sender, DevExpress.Data.SelectionChangedEventArgs e)
{
gridView_veriTab.UpdateSummary();
}
void gridView_veriTab_CustomDrawFooter(object sender, DevExpress.XtraGrid.Views.Base.RowObjectCustomDrawEventArgs e)
{
GridViewInfo ViewInfo = gridView_veriTab.GetViewInfo() as GridViewInfo;
var vInfo = e.Info;
var info1 = ViewInfo.ColumnsInfo[2];
var info2 = ViewInfo.ColumnsInfo[3];
Rectangle rect = Rectangle.FromLTRB(info1.Bounds.Left, e.Bounds.Top + 3, info2.Bounds.Right, e.Bounds.Bottom - 2);
e.Handled = true;
var fieldInfo = typeof(BaseView).GetField("painter", BindingFlags.NonPublic | BindingFlags.Instance);
GridPainter painter = fieldInfo.GetValue(sender) as GridPainter;
FooterCellPainter footerCellPainter = painter.ElementsPainter.FooterCell;
FooterCellInfoArgs args = new FooterCellInfoArgs(e.Cache);
args.Bounds = rect;
args.DisplayText = "Toplam Database: " + gridView_veriTab.RowCount;
footerCellPainter.DrawObject(args);
}
void gridView_veriTab_CustomDrawFooterCell(object sender, DevExpress.XtraGrid.Views.Grid.FooterCellCustomDrawEventArgs e)
{
if (e.Column == gridResultFrstColumn)
{
int selectedCount = (sender as GridView).SelectedRowsCount;
if (selectedCount == 0)
e.Info.DisplayText = "";
else if (selectedCount == 1)
e.Info.DisplayText = "1";
else
e.Info.DisplayText = string.Format("{0}", selectedCount);
}
}
}}