2015-11-22 5 views
0

В настоящее время мое gridview отображает всех зарегистрированных пользователей моей игры, когда кто-либо входит в систему. Мне бы хотелось просто показать строку пользователя, который только что зарегистрировался, указанный своим именем пользователя. вот в чем проблема, так как пользователь Nick в настоящий момент входит в систему, он должен просто показать строку где username = Nick. Как я могу это сделать?Как просмотреть определенную строку на Gridview?

<asp:SqlDataSource ID="SqlDataSource_Game" runat="server" ConnectionString="<%$ ConnectionStrings:\\MAC\HOME\DESKTOP\NIMV1.MDFConnectionString %>" SelectCommand="SELECT [UserName], [Won], [Lost], [Played] FROM [Table]"></asp:SqlDataSource> 
    <br /> 
    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="UserName" DataSourceID="SqlDataSource_Game"> 
     <Columns> 
      <asp:BoundField DataField="UserName" HeaderText="UserName" ReadOnly="True" SortExpression="UserName" /> 
      <asp:BoundField DataField="Won" HeaderText="Won" SortExpression="Won" /> 
      <asp:BoundField DataField="Lost" HeaderText="Lost" SortExpression="Lost" /> 
      <asp:BoundField DataField="Played" HeaderText="Played" SortExpression="Played" /> 
     </Columns> 
    </asp:GridView> 

enter image description here

+0

Почему не динамически создавать 'команду SELECT' включать только нужную строку с помощью' WHERE' положение? Лично я делаю все свои запросы в кодировке и привязываю результаты с кодом, а не с помощью объектов 'SqlDataSource', потому что мне становится проще. –

ответ

0

Вы должны сохранить логин-статус, когда пользователь вошел в loggedout

  1. Добавить столбец в LoginStatus
  2. Когда пользователь регистрируется в наборе седловине LoginStatus = 1
  3. Когда пользователь вышел из системы, установил col loginStatus = 0

На PageLoad, где вы связать GridView сделать запрос как

Select * from tableName where loginStatus=1 
0

Вы можете непосредственно скрыть все ненужные строки, проверка на лету для того, чтобы показать. Я имею в виду что-то вроде (в виде псевдокода, некоторые опечатки возможны):

foreach (DataGridViewRow myrow in GridView1.Rows) 
{ 
    myrow.Visible=false; 
    if(myrow.Cells[0].Value == "Nick") 
    { 
     myrow.Visible=true; 
    } 
} 
Смежные вопросы