ahmed_sa Ответов: 0

Как распечатать выбранный флажок в datagridview и в случае отсутствия флажка распечатать все


На самом деле мне нужно распечатать записи, чтобы флажок был установлен
= true внутри datagridview

А если нет ни одной записи флажок установлен значение
= false проверено печать всех

Мне нужно сделать это в разделе печать кнопок .

Нет необходимости вдаваться в детали кода мне нужно только реализовать только псевдокод ниже :

псевдокод

если(записи флажок = истина)

печать проверяется только в datagridview

еще

печать всего в datagridview(в случае, если внутри сетки не установлен какой-либо флажок)
мой текущий код распечатать все :

private void btnPrint_Click(object sender, EventArgs e)
{
    for (int i = 0; i < Grid.Rows.Count; i++)
    {
        if (string.IsNullOrEmpty(Convert.ToString(Grid.Rows[i].Cells["ItemCode"].Value))) return;
        Dictionary<string, string> Formulas = new Dictionary<string, string>();
        Formulas.Add("ImgFlds", BarcodePath);
        for (int x = 0; x < 4; x++)
        {
            string formula = "";
            int fieldVal = 0;

            if (x == 0)
            {
                formula = "lefttopcap";
                fieldVal = lefttopcap;
            }
            else if (x == 1)
            {
                formula = "righttopcap";
                fieldVal = righttopcap;
            }
            else if (x == 2)
            {
                formula = "leftbottomcap";
                fieldVal = leftbottomcap;
            }
            else if (x == 3)
            {
                formula = "rightbottomcap";
                fieldVal = rightbottomcap;
            }

            switch (fieldVal)
            {
                case 1:
                    break;
                case 2:
                    Formulas.Add(formula, Convert.ToString(Grid.Rows[i].Cells["CompanyName"].Value));
                    break;
                case 3:
                    Formulas.Add(formula, Convert.ToString(Grid.Rows[i].Cells["BranchName"].Value));
                    break;
                case 4:
                    Formulas.Add(formula, Convert.ToString(Grid.Rows[i].Cells["ItemLatName"].Value));
                    break;
                case 5:
                    Formulas.Add(formula, Convert.ToString(Grid.Rows[i].Cells["ItemAraName"].Value));
                    break;
                case 6:
                    Formulas.Add(formula, Convert.ToString(Grid.Rows[i].Cells["SelPrice1"].Value));
                    break;

                default:
                    break;
            }
        }

        string sql = "select * from Branches where 1=1 ";
        int z = !string.IsNullOrEmpty(Convert.ToString(Grid.Rows[i].Cells["ItemCount"].Value)) ? Convert.ToInt32(Convert.ToString(Grid.Rows[i].Cells["ItemCount"].Value)) : 1;

        Reporting.PrinterName = cmbPrinterType.Text; 
        Reporting.PrintType = PrintTypes.Print;
        CreateBarcode(Convert.ToString(Grid.Rows[i].Cells["code"].Value).Trim());
        picItem.Image.Save(BarcodePath);
        Reporting.ShowReport("BarcodePrinting.rpt", sql, Formulas, z);
    }
}


чтобы сделать флажок в GridView в данных следующим образом
bool isSelected = Convert.ToBoolean(Grid.Rows[i].Cells["SelectedPrint"].Value);
if (isSelected)
{
}


Что я уже пробовал:

How to print selected checkbox in datagridview and in case no checked print all

Bryian Tan

почему бы не поставить if (string.Иснуллорем ... внутри если (изменили реализацию) заблокировать?

0 Ответов