dropdownlist筛选gridview 急哦!

baoxuetianxia 2009-04-03 05:31:38
普通的筛选我会的 但是我要筛选的 我现在dropdownlist里 我编辑了四项 ①全部留言记录 ②今天的留言记录 ③近一周的留言记录 ④近一个月的留言记录
我想选一个项 就在gridview 里显示出数据!写代码举例子把? 谢谢各位大哥大姐 然后对应的dropdownlist 实现 ①删除全部留言记录②删除今天留言记录。。。。
分不多了啊。就先给 10分了啊 真的谢谢各位了啊
...全文
609 32 打赏 收藏 转发到动态 举报
写回复
用AI写文章
32 条回复
切换为时间正序
请发表友善的回复…
发表回复
baoxuetianxia 2009-04-09
  • 打赏
  • 举报
回复
谢谢各位给我的启示哦。我已经弄好了。呵呵额。谢谢了哦。我去结贴去了哦。呵呵。。
baoxuetianxia 2009-04-08
  • 打赏
  • 举报
回复
等待中啊。。。。不要沉下去啊。。
lzj4905 2009-04-08
  • 打赏
  • 举报
回复
你干脆点,在DDL的值改变事件里面判断他的selectValue
是哪种情况就用哪种情况的数据源来绑定GridView.DataSource = "这种情况返回的数据表",再帮定。
判断4此就可以了。。
这4种情况无非就是查询语句的时间判断问题,
很好解决的,你自己好好像想。
baoxuetianxia 2009-04-08
  • 打赏
  • 举报
回复
现在我也急啊 怎么个办法了哦。。郁闷ing啊 谢谢各位大哥大姐了哦。帮帮小弟我把
在此谢过了啊。
baoxuetianxia 2009-04-07
  • 打赏
  • 举报
回复
还是不行啊 怎么办的啊 。。
baoxuetianxia 2009-04-07
  • 打赏
  • 举报
回复
好像用dropdownlist事件 不行的吧 需要弄个switch开关 这样好筛选啊
然后后台 改sqldatesource的selectcommand 属性
能写出具体代码 就好了呵呵。
spark_wu 2009-04-07
  • 打赏
  • 举报
回复
在DropDownList事件中
改变sqldatasource 的selectcommand 值 就是 select 语句的where条件
然后 GridView1.DataSourceID=="SqlDataSour1“
GridView1.databind();
baoxuetianxia 2009-04-07
  • 打赏
  • 举报
回复
我自己想到了一个思路 大家帮我分析下可行性啊
<asp:DropDownList ID="DropDownList1" runat="server" Height="16px" Width="152px"
AutoPostBack="True">
<asp:ListItem Value="0">查看全部留言</asp:ListItem>
<asp:ListItem Value="1">查看今天的留言</asp:ListItem>
<asp:ListItem Value="2">查看近一个星期的留言</asp:ListItem>
<asp:ListItem Value="3">查看近一个月的留言</asp:ListItem>
</asp:DropDownList></p>
这是 dropdownlist
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AllowSorting="True" AutoGenerateColumns="False" CellPadding="4"
DataSourceID="SqlDataSource1" ForeColor="#333333" GridLines="None"
onprerender="GridView1_PreRender1" Width="734px">
<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
<Columns>
<asp:BoundField DataField="Suggest" HeaderText="意见和建议" SortExpression="Suggest">
<HeaderStyle HorizontalAlign="Left" />
</asp:BoundField>
<asp:BoundField DataField="SubmitDateTime" HeaderText="提交时间"
SortExpression="SubmitDateTime">
<HeaderStyle HorizontalAlign="Left" />
</asp:BoundField>
</Columns>
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<EditRowStyle BackColor="#999999" />
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
</asp:GridView>
然后我弄了俩个 sqldatesource 分别是 显示全部留言 还有 显示近一个星期的
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:MFGConnectionString %>"
SelectCommand="SELECT [Suggest], [SubmitDateTime] FROM [Feedback]">
</asp:SqlDataSource>
<asp:SqlDataSource ID="SqlDataSource2" runat="server"
ConnectionString="<%$ ConnectionStrings:MFGConnectionString %>"
SelectCommand="SELECT * FROM dbo.Feedback WHERE datediff(day,SubmitDateTime,getdate())<=7">
</asp:SqlDataSource>
然后想在后台 写代码进行筛选
switch (DropDownList1.SelectedValue)
{
case "查看今天的留言":
//这里修改GridView的DataSourceID属性 就是上面的那个 qlDataSource2
break;

}

这个想法可否?
请大家帮帮我哦。。。。。。。。。。。。。。。。。。其实也是很基本的问题 但是本人 。。。。菜啊。
所以想请求专家
你们的回答是对的 但是 思路 我不太好理解哦。能否将就我的思路 帮我考虑下的啊???
dgq3719091 2009-04-07
  • 打赏
  • 举报
回复
全部留言记录的时候 ListItem litem=new ListItem ("①全部留言记录","1753-01-01");
dgq3719091 2009-04-07
  • 打赏
  • 举报
回复
你设置DropDownList的text为①全部留言记录、 ②今天的留言记录 、③近一周的留言记录 、④近一个月的留言记录
value就标记的值,如
private void bind_ddl(int mid)
{
DropDownList1.Items.Clear();
ListItem litem=new ListItem ("①全部留言记录",0);
DropDownList1.items.add(litem);
litem = new ListItem("②今天的留言记录", DateTime.Now.Date.ToString ());
DropDownList1.items.add(litem);
litem = new ListItem("①近一周的留言记录", Convert.ToString(DateTime.Now.Date -7));
DropDownList1.items.add(litem);
...
}
在根据绑定gridview的TABLE,去筛选,如dt.DefaultView.RowFilter=“日期字段>=DropDownList1.selectvalue”
在gridview.datasourse=dt.DefaultView;
gridview.databing();
差不多就这样 你在就修改下
baoxuetianxia 2009-04-07
  • 打赏
  • 举报
回复
(我是新人)好像CSDN 必须要结贴才能给分呢把 真感谢楼上的每位兄弟了啊 过意不去了啊
由于可能是我表达能力有问题把(或者最近思维混乱把 没有找到工作 心烦意乱把)。还没有合适的答案把。目前
等待 你们继续给我最清晰的答案哦
但是我一定会结贴的 !!谢谢各位了哦。哦。
具体问题 我在上一层楼 又阐述了一遍
baoxuetianxia 2009-04-07
  • 打赏
  • 举报
回复
<asp:DropDownList ID="DropDownList1" runat="server" Height="16px" Width="184px"
AutoPostBack="True">
<asp:ListItem Selected="True">全部留言记录</asp:ListItem>
<asp:ListItem>今天的留言记录</asp:ListItem>
<asp:ListItem>近一周的留言记录</asp:ListItem>
<asp:ListItem>近一个月的留言记录</asp:ListItem>
</asp:DropDownList>
      
<asp:DropDownList ID="DropDownList2" runat="server" Height="16px" Width="143px"
AutoPostBack="True">
<asp:ListItem>删除全部留言记录</asp:ListItem>
<asp:ListItem>删除今天留言记录</asp:ListItem>
<asp:ListItem>删除近一周留言记录</asp:ListItem>
<asp:ListItem>删除近一个月留言记录</asp:ListItem>
</asp:DropDownList>
</p>
<h3>留言反馈查看及删除</h3>
<p>
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AllowSorting="True" AutoGenerateColumns="False" DataKeyNames="Id"
DataSourceID="SqlDataSource1" onprerender="GridView1_PreRender1" Width="521px">
<Columns>
<asp:CommandField ShowDeleteButton="True" />
<asp:BoundField DataField="Name" HeaderText="姓名" SortExpression="Name">
<HeaderStyle BackColor="#CCCCCC" HorizontalAlign="Left" />
</asp:BoundField>
<asp:BoundField DataField="PhoneNumber" FooterText="sdfasdfasdfa"
HeaderText="电话号码" SortExpression="PhoneNumber">
<HeaderStyle BackColor="Silver" />
<ItemStyle HorizontalAlign="Left" />
</asp:BoundField>
<asp:BoundField DataField="Email" HeaderText="邮箱" SortExpression="Email">
<HeaderStyle BackColor="#CCCCCC" HorizontalAlign="Center" />
<ItemStyle HorizontalAlign="Right" />
</asp:BoundField>
<asp:BoundField DataField="Suggest" HeaderText="留言" SortExpression="Suggest">
<HeaderStyle BackColor="Silver" HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="SubmitDateTime" HeaderText="提交时间"
SortExpression="SubmitDateTime">
<HeaderStyle BackColor="#CCCCCC" HorizontalAlign="Left" />
</asp:BoundField>
<asp:BoundField DataField="Id" HeaderText="编号" InsertVisible="False"
ReadOnly="True" SortExpression="Id">
<HeaderStyle BackColor="Silver" HorizontalAlign="Right" />
</asp:BoundField>
</Columns>
<EmptyDataTemplate>
你要查询的数据为空!
</EmptyDataTemplate>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:MFGConnectionString %>"
DeleteCommand="DELETE FROM [Feedback] WHERE [Id] = @Id"
InsertCommand="INSERT INTO [Feedback] ([PhoneNumber], [Name], [Email], [Suggest], [SubmitDateTime]) VALUES (@PhoneNumber, @Name, @Email, @Suggest, @SubmitDateTime)"
SelectCommand="SELECT [PhoneNumber], [Name], [Email], [Suggest], [SubmitDateTime], [Id] FROM [Feedback]"
UpdateCommand="UPDATE [Feedback] SET [PhoneNumber] = @PhoneNumber, [Name] = @Name, [Email] = @Email, [Suggest] = @Suggest, [SubmitDateTime] = @SubmitDateTime WHERE [Id] = @Id">
<DeleteParameters>
<asp:Parameter Name="Id" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="PhoneNumber" Type="String" />
<asp:Parameter Name="Name" Type="String" />
<asp:Parameter Name="Email" Type="String" />
<asp:Parameter Name="Suggest" Type="String" />
<asp:Parameter Name="SubmitDateTime" Type="DateTime" />
<asp:Parameter Name="Id" Type="Int32" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="PhoneNumber" Type="String" />
<asp:Parameter Name="Name" Type="String" />
<asp:Parameter Name="Email" Type="String" />
<asp:Parameter Name="Suggest" Type="String" />
<asp:Parameter Name="SubmitDateTime" Type="DateTime" />
</InsertParameters>
</asp:SqlDataSource>
这是sqldatesource 和 gridview 做了一个显示全部 留言信息
又加上了 一个筛选 dropdownlist(无数据绑定) 自己添加几个项目
<asp:ListItem Selected="True">全部留言记录</asp:ListItem>
<asp:ListItem>今天的留言记录</asp:ListItem>
<asp:ListItem>近一周的留言记录</asp:ListItem>
<asp:ListItem>近一个月的留言记录</asp:ListItem>
数据库的一个表 Feedback
Name PhoneNumber Email Suggest SubmitDateTime Id
123 dfalkdsjf a@12.com asdkjf 自动获得的


现在我想通过 dropdownlist (允许回送的) 选中例如 今天的留言记录 gridview就显示出 Feedback表中的 今天的留言记录
wwwiii520 2009-04-07
  • 打赏
  • 举报
回复
System.Data.DataView view=new System.Data.DataView("填充gridview的datatable")
view.RowFilter="發表的時間列>?"
baoxuetianxia 2009-04-07
  • 打赏
  • 举报
回复
具体执行SQL语句绑定gridview数据 怎么写的哦。麻烦了哦。。
baoxuetianxia 2009-04-07
  • 打赏
  • 举报
回复
弄个开关switch 然后case “近一个星期的留言记录”gridview显示近一个星期的留言记录
case “近一个月的留言记录”gridview显示近一个月的留言记录
这个是用SqlDateSource 和 gridview 配合 起来 显示全部 留言记录
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
AllowSorting="True" AutoGenerateColumns="False" DataKeyNames="Id"
DataSourceID="SqlDataSource1" onprerender="GridView1_PreRender1" Width="521px">
<Columns>
<asp:CommandField ShowDeleteButton="True" />
<asp:BoundField DataField="Name" HeaderText="姓名" SortExpression="Name">
<HeaderStyle BackColor="#CCCCCC" HorizontalAlign="Left" />
</asp:BoundField>
<asp:BoundField DataField="PhoneNumber" FooterText="sdfasdfasdfa"
HeaderText="电话号码" SortExpression="PhoneNumber">
<HeaderStyle BackColor="Silver" />
<ItemStyle HorizontalAlign="Left" />
</asp:BoundField>
<asp:BoundField DataField="Email" HeaderText="邮箱" SortExpression="Email">
<HeaderStyle BackColor="#CCCCCC" HorizontalAlign="Center" />
<ItemStyle HorizontalAlign="Right" />
</asp:BoundField>
<asp:BoundField DataField="Suggest" HeaderText="留言" SortExpression="Suggest">
<HeaderStyle BackColor="Silver" HorizontalAlign="Center" />
</asp:BoundField>
<asp:BoundField DataField="SubmitDateTime" HeaderText="提交时间"
SortExpression="SubmitDateTime">
<HeaderStyle BackColor="#CCCCCC" HorizontalAlign="Left" />
</asp:BoundField>
<asp:BoundField DataField="Id" HeaderText="编号" InsertVisible="False"
ReadOnly="True" SortExpression="Id">
<HeaderStyle BackColor="Silver" HorizontalAlign="Right" />
</asp:BoundField>
</Columns>
<EmptyDataTemplate>
你要查询的数据为空!
</EmptyDataTemplate>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:MFGConnectionString %>"
DeleteCommand="DELETE FROM [Feedback] WHERE [Id] = @Id"
InsertCommand="INSERT INTO [Feedback] ([PhoneNumber], [Name], [Email], [Suggest], [SubmitDateTime]) VALUES (@PhoneNumber, @Name, @Email, @Suggest, @SubmitDateTime)"
SelectCommand="SELECT [PhoneNumber], [Name], [Email], [Suggest], [SubmitDateTime], [Id] FROM [Feedback]"
UpdateCommand="UPDATE [Feedback] SET [PhoneNumber] = @PhoneNumber, [Name] = @Name, [Email] = @Email, [Suggest] = @Suggest, [SubmitDateTime] = @SubmitDateTime WHERE [Id] = @Id">
<DeleteParameters>
<asp:Parameter Name="Id" Type="Int32" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="PhoneNumber" Type="String" />
<asp:Parameter Name="Name" Type="String" />
<asp:Parameter Name="Email" Type="String" />
<asp:Parameter Name="Suggest" Type="String" />
<asp:Parameter Name="SubmitDateTime" Type="DateTime" />
<asp:Parameter Name="Id" Type="Int32" />
</UpdateParameters>
<InsertParameters>
<asp:Parameter Name="PhoneNumber" Type="String" />
<asp:Parameter Name="Name" Type="String" />
<asp:Parameter Name="Email" Type="String" />
<asp:Parameter Name="Suggest" Type="String" />
<asp:Parameter Name="SubmitDateTime" Type="DateTime" />
</InsertParameters>
</asp:SqlDataSource>
baoxuetianxia 2009-04-07
  • 打赏
  • 举报
回复
这个我也知道的啊 就是代码怎么写的哦。麻烦了哦。
大概关键字:gridview显示一个表中近一个月的记录 代码
Roc_Lee 2009-04-07
  • 打赏
  • 举报
回复
楼主将
dropdownlist的autopostback属性true
然后双击dropdownlist
会在后台 就是
.cs中出现事件。
再这里将数据库语句写上。
绑定到gridview中

tuotuo_happy 2009-04-07
  • 打赏
  • 举报
回复
设置dropdownlist的Autopostback=true
获取在dropdownlist选择的值作为SqL语句的条件
然后把查出来的数据绑定到dropdownlist就可以了
xsm545 2009-04-07
  • 打赏
  • 举报
回复
普通的筛选不是会吗,找到普通的筛选里面的SQL语句,然后修改为上面那句SQL语句,gridview 绑定方法不用改的,改下SQL就行
baoxuetianxia 2009-04-05
  • 打赏
  • 举报
回复
能不能说点详细点的哦。代码之类的 发出来哦。。具体 就就告诉我 gridview 如何读取近一个星期的记录 后台代码怎么写的哦。
select * from dbo.Feedback where datediff(day,SubmitDateTime,getdate()<=7)这是数据库命令
加载更多回复(12)

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧