goelhima Ответов: 6

hightlight последняя запись в виде сетки


Подскажите, пожалуйста, как выделить последнюю вставленную запись в gridview? Данных в целях ГИРД показывает из хранимой процедуры с помощью подключения к SQL-серверу.

Я не получаю точного кода для этого.

пожалуйста, помогите мне.

senguptaamlan

пожалуйста, дайте нам знать, что вы опробовали

Dalek Dave

Отредактировано, чтобы удалить смайлики (Фу).

goelhima

охраняемых недействительными gridviewNewClaimType_PageIndexChanging(объект отправителя, GridViewPageEventArgs е)
{

// con = new SqlConnection ("источник данных=NSEZ-DD4-028;начальный каталог=Страхование;Интегрированная безопасность= SSPI");
con = new SqlConnection(connStr);
cmd = new SqlCommand ("Create_Claim_Type_All", con);
УМК.CommandType = CommandType.Хранимая процедура;
против.Открыть();
УМК.Подключение = кон;
Sqldataadapter adapter = новый SqlDataAdapter(cmd);
адаптер.Заполнить(ДС);
gridviewNewClaimType.Источник данных = ДС;
gridviewNewClaimType.DataBind();
gridviewNewClaimType.PageIndex = e. NewPageIndex;
gridviewNewClaimType.Строк[gridviewNewClaimType.Свойства selectedIndex]. BackColor = Система.Рисование.Цвет.Красный;
gridviewNewClaimType.DataBind();
против.Закрывать();
}

6 Ответов

Рейтинг:
2

manjunath Kannur

gridview.Rows(gridview.Rows.Count - 1)


Рейтинг:
1

Member 12498961

Если вам нужно выделить последнюю вставленную запись в gridview,

1. Вам нужно вести колонку CreatedDate 'в таблице.
2. На Rowbound(), вы можете использовать, если..еще состояние как,

Если (createdDate - последняя дата)
{
// выполните операцию выделения

gridviewCustomer.Rows[lastRowIndex].BackColor = System.Drawing.Color.Red;

}


Рейтинг:
0

senguptaamlan

используйте следующий код внутри обработчика событий Page_Load

int lastRowIndex = 0;
if (!IsPostBack)
{
    dgTest.DataSource = GetDataTable(); //the GetDataTable function returns a DataTable
    dgTest.DataBind();
}
foreach (GridViewRow grv in dgTest.Rows)
{
    if (grv.RowType == DataControlRowType.DataRow)
    {
        if (grv.RowIndex > lastRowIndex)
        {
            //getting the last data row index
            lastRowIndex = grv.RowIndex;
        }
    }
}
//dgTest.Rows[lastRowIndex].CssClass = "lastRowClass";
dgTest.Rows[lastRowIndex].BackColor = System.Drawing.Color.Red;

LastRowClass - это имя класса CSS, который можно использовать для выделения последней строки. Проверьте этот код, чтобы увидеть, получает ли последняя строка красный цвет или нет.


Hiren solanki

Хороший ответ.

goelhima

это не работает :(

senguptaamlan

проверьте обновленный код и дайте мне знать...

senguptaamlan

если вы решили эту проблему, дайте нам также знать...может быть, я что-то упускаю....Мне также не терпится узнать, решена проблема или нет...

Ravimcts

метод gettable - это где?

senguptaamlan

Здесь метод GetDataTable () представляет собой метод, который возвращает DataTable, который, в свою очередь, будет привязан к сетке. Я не указал реализацию метода, чтобы сделать его универсальным (не c# generic). :)

Рейтинг:
0

goelhima

пожалуйста, проверьте мой код...
и это все еще не работает...когда я запускаю этот код, то на первой странице последней строки он показывает красный цвет, но когда я заполняю все текстовые поля и сохраняю, чем он не работает .

public partial class Create_New_Customer : System.Web.UI.Page
    {
  int lastRowIndex = 0;
 protected void Page_Load(object sender, EventArgs e)
        {
if (!IsPostBack)
            {
                // con = new SqlConnection("Data Source=NSEZ-DD4-028;Initial Catalog=Insurance;Integrated Security= SSPI");
                con = new SqlConnection(connStr);

                cmd = new SqlCommand("Create_Customer_All", con);
                cmd.CommandType = CommandType.StoredProcedure;
                con.Open();
                cmd.Connection = con;
                SqlDataAdapter adapter = new SqlDataAdapter(cmd);
                adapter.Fill(ds);
                gridviewCustomer.DataSource = ds;
                gridviewCustomer.DataBind();
                con.Close();
//            }

            foreach (GridViewRow grv in gridviewCustomer.Rows)
            {
                if (grv.RowType == DataControlRowType.DataRow)
                {
                    if (grv.RowIndex > lastRowIndex)
                    {
                        lastRowIndex = grv.RowIndex;
                    }
                }
            }
       //     gridviewCustomer.Rows[lastRowIndex].CssClass = "lastRowClass";
            gridviewCustomer.Rows[lastRowIndex].BackColor = System.Drawing.Color.Red;
            //    con.Close();
        }


senguptaamlan

Я не понял этого пункта "но когда я заполняю все текстовые поля и сохраняю, чем это не работает" , пожалуйста, объясните немного больше

Рейтинг:
0

goelhima

у меня есть решение
спасибо за помощь :)

на публичном занятии
int lastRowIndex = 0;


на кнопке Сохранить

lastRowIndex = gridviewNewClaimType.Rows.Count - 1;
           gridviewNewClaimType.Rows[lastRowIndex].BackColor = System.Drawing.Color.LightBlue;
       }


Рейтинг:
0

Member 10475986

protected void GridView1_RowDataBound(отправитель объекта, GridViewRowEventArgs e)
{
если (электронная.Подряд.RowType == DataControlRowType.Строкаданных)
{

if (GridView1.Pageindex было == 0 &&усилителя; электронные.Подряд.Параметр rowindex == 0) // это условие используется для нахождения первой записи первой странице
{
// Написать код для первых строк первой страницы
}

}
если (электронная.Подряд.RowType == DataControlRowType.Нижний колонтитул)
{
инт PageCount = gdFutureVideoPlan.PageCount-1;
int CurrentPageNo = gdFutureVideoPlan.Pageindex было;
if (PageCount == CurrentPageNo) / / это условие используется для поиска последней записи последней страницы
{
GridViewRow row= GridView1. Rows[GridView1.Rows.Количество-1];
// В этой строке вы получите последнюю строку последней страницы

}
}
}


CHill60

Ничего нового не добавлено к посту шестилетней давности!