Поиск по DataGridView через TextBox

Rinzi

Ты вел слово в textbox, нажимешь на button и он ищет есть ли такой элемент в datagridview, спасибо
10 ответов

Rinzi

Или хотя бы, чтобы мы могли вводить в текстбокс и он открывал файл и искал там, есть ли такой элемент


Rinzi

Было бы неплохо, если бы вы приложили проект


Rinzi

Вот, если поможете, было бы здорово)


Rinzi

Хех Студия открывать отказывается. Чекнул антивирусом, он там что-то потёр, но основные файлы проекта остались нетронутыми. Странно, правда?


Rinzi

я создал проект 7, но затем, т.к я использовал всякие методы поиска, чтобы не испортить существующую, просто копирнул папку, сначала не работала, но потом все пошло нормально, я так понял, что 2 проекта сохранялись в 1 папку


Rinzi

Exe'шник скорее всего потёрся, не посмотрел. В любом случае Студия отказывается открывать проект


Rinzi

Вот


Rinzi

Давайте так: закиньте сюда код формы и xml файл из которого тянутся данные. (Не забудьте обрамить код тэгами)


Rinzi

#pragma once
 
namespace Проект6 {
 
    using namespace System;
    using namespace System::ComponentModel;
    using namespace System::Collections;
    using namespace System::Windows::Forms;
    using namespace System::Data;
    using namespace System::Drawing;
 
    /// <summary>
    /// Сводка для form2
    /// </summary>
    public ref class form2 : public System::Windows::Forms::Form
    {
    public:
        form2(void)
        {
            InitializeComponent();
            //
            //TODO: добавьте код конструктора
            //
        }
 
    protected:
        /// <summary>
        /// Освободить все используемые ресурсы.
        /// </summary>
        ~form2()
        {
            if (components)
            {
                delete components;
            }
        }
    public: System::Windows::Forms::Button^  button2;
    protected:
 
    private: System::Windows::Forms::DataGridView^  dataGridView1;
    private: System::Windows::Forms::TextBox^  textBox2;
 
    private: System::Windows::Forms::Button^  button3;
    protected:
 
    private:
        /// <summary>
        /// Требуется переменная конструктора.
        /// </summary>
        System::ComponentModel::Container ^components;
 
#pragma region Windows Form Designer generated code
        /// <summary>
        /// Обязательный метод для поддержки конструктора - не изменяйте
        /// содержимое данного метода при помощи редактора кода.
        /// </summary>
        void InitializeComponent(void)
        {
            this->button2 = (gcnew System::Windows::Forms::Button());
            this->dataGridView1 = (gcnew System::Windows::Forms::DataGridView());
            this->textBox2 = (gcnew System::Windows::Forms::TextBox());
            this->button3 = (gcnew System::Windows::Forms::Button());
            (cli::safe_cast<System::ComponentModel::ISupportInitialize^>(this->dataGridView1))->BeginInit();
            this->SuspendLayout();
            // 
            // button2
            // 
            this->button2->Location = System::Drawing::Point(387, 481);
            this->button2->Name = L"button2";
            this->button2->Size = System::Drawing::Size(75, 23);
            this->button2->TabIndex = 0;
            this->button2->Text = L"button1";
            this->button2->UseVisualStyleBackColor = true;
            this->button2->Click += gcnew System::EventHandler(this, &form2::button2_Click);
            // 
            // dataGridView1
            // 
            this->dataGridView1->AllowUserToOrderColumns = true;
            this->dataGridView1->ColumnHeadersHeightSizeMode = System::Windows::Forms::DataGridViewColumnHeadersHeightSizeMode::AutoSize;
            this->dataGridView1->Location = System::Drawing::Point(12, 12);
            this->dataGridView1->Name = L"dataGridView1";
            this->dataGridView1->RowTemplate->Height = 24;
            this->dataGridView1->Size = System::Drawing::Size(1548, 275);
            this->dataGridView1->TabIndex = 1;
            // 
            // textBox2
            // 
            this->textBox2->Location = System::Drawing::Point(143, 365);
            this->textBox2->Name = L"textBox2";
            this->textBox2->Size = System::Drawing::Size(100, 22);
            this->textBox2->TabIndex = 2;
            // 
            // button3
            // 
            this->button3->Location = System::Drawing::Point(154, 393);
            this->button3->Name = L"button3";
            this->button3->Size = System::Drawing::Size(75, 23);
            this->button3->TabIndex = 3;
            this->button3->Text = L"button1";
            this->button3->UseVisualStyleBackColor = true;
            this->button3->Click += gcnew System::EventHandler(this, &form2::button3_Click);
            // 
            // form2
            // 
            this->AutoScaleDimensions = System::Drawing::SizeF(8, 16);
            this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
            this->ClientSize = System::Drawing::Size(1572, 558);
            this->Controls->Add(this->button3);
            this->Controls->Add(this->textBox2);
            this->Controls->Add(this->dataGridView1);
            this->Controls->Add(this->button2);
            this->Name = L"form2";
            this->Text = L"form2";
            this->Load += gcnew System::EventHandler(this, &form2::form2_Load);
            (cli::safe_cast<System::ComponentModel::ISupportInitialize^>(this->dataGridView1))->EndInit();
            this->ResumeLayout(false);
            this->PerformLayout();
 
        }
#pragma endregion
        DataTable ^ Таблица;
        DataSet ^ ВводДанных;
    private: System::Void form2_Load(System::Object^  sender, System::EventArgs^  e) {
        this->Text = "База данных";
        button2->Text = "Сохранить";
        this->Visible = false;
        Таблица = gcnew DataTable();
        ВводДанных = gcnew DataSet();
        if (IO::File::Exists("baza.xml") == false)
        {
            dataGridView1->DataSource = Таблица;
            Таблица->Columns->Add("Фамилия");
            Таблица->Columns->Add("Имя");
            Таблица->Columns->Add("Отчество");
            Таблица->Columns->Add("Дата рождения");
            Таблица->Columns->Add("Серия и номер");
            Таблица->Columns->Add("Пол");
            Таблица->Columns->Add("Откуда");
            Таблица->Columns->Add("Куда");
            Таблица->Columns->Add("Дата вылета");
            Таблица->Columns->Add("Код рейса");
            Таблица->Columns->Add("Электронная почта");
            Таблица->Columns->Add("Номер телефона");
            ВводДанных->Tables->Add(Таблица);
        }
        else
        {
            ВводДанных->ReadXml("baza.xml");
            String ^ СтрокаXML = ВводДанных->GetXml();
            dataGridView1->DataMember = ("Название таблицы");
            dataGridView1->DataSource = ВводДанных;
        }
    }
    private: System::Void button2_Click(System::Object^  sender, System::EventArgs^  e) {
        Таблица->TableName = "Название таблицы";
        ВводДанных->WriteXml("baza.xml");
    }
    private: System::Void button3_Click(System::Object^  sender, System::EventArgs^  e) {
        if (textBox2->SelectedText == "Тут должен быть элемент файла или базы данных")
        {
            MessageBox::Show("Код найден!");
        }
        else
        {
            MessageBox::Show("Код не найден!");
        }
        }
};
}


Rinzi

Rinzi, как я понимаю, данные тянутся из XML файла, но тот, который вы прислали, пустой