1. C#中dataGridViewX1控件怎么实现过滤
这个是datagrid中不带的。截图的中的做法是在每个列标题处添加的下拉框,然后使用下拉框的change事件刷新datagrid
还有一种是人家下好的控件你下载下来直接使用好了。网络可以网络到。CSDN网站里有这个控件
2. C# Winform DataGridView遍历显示数组,去掉末尾空行
试着用datagridview的过滤筛选方法实现。
3. 关于怎样获取DevExpress GridView过滤后或排序后的数据集问题
笨办法就是循环遍历GridView,根据gridView.GetRow()或者gridView.GetDataRow()(该方法返回DataRow类型,使用于数据源是DataTable)去获取指定handle对应的数据对象。
4. 如何将datagridview中的数据进行筛选
lz可以用dataTable做为数据源绑定到dgv,然后用datatable的过滤功能,会把过滤后的数据自然显示在dgv上。
5. c# datagridview中用textbox使用查询功能实现
请参考
private SqlDataAdapter dataAdapter; // 数据适配器
private DataSet dataSet; // 数据集
private SqlConnection conn = new SqlConnection("server=.;uid=sa;pwd=;database=northwind");
public Form2()
{
InitializeComponent();
}
// 窗体加载时,填充数据集
private void Form2_Load(object sender, EventArgs e)
{
BindProctList();
}
private void BindProctList()
{
// 查询数据库用的 SQL 语句
string sql = "select * from procts";
// 创建数据集对象
dataAdapter = new SqlDataAdapter(sql, conn);
// 创建数据集对象
dataSet = new DataSet("Procts");
// 填充数据集
dataAdapter.Fill(dataSet, "Procts");
// 指定 DataGridView 的数据源
dataGridView1.DataSource = dataSet.Tables["Procts"];
}
private void button1_Click(object sender, EventArgs e)
{
DataView dv = dataSet.Tables["Procts"].DefaultView;
dv.RowFilter = "proctname = '" + textBox1.Text + "'";
dataGridView1.DataSource = dv;
}
6. 怎么隐藏GridView某列的某些值
1. 处理CheckBox事件
2. 在CheckBox事件中把用于绑定GridView的数据集(比如dataset)用Filter功能过滤
3. 把过滤的数据集绑定到GridView上
PS: 这是新手方法,正式项目中不建议使用。
7. datagridview 对其中的数据操作了 怎么 重新加载 显示操作后的数据 显示才操作后的表
总感觉你的问题乱乱的。。。
思路一:你可以先把所有数据填充到一张表A里。。再对表A进行查询(select(条件)),得到数据填充到表B,最后datagridview.datasource=表B。
想有个按键(所有数据),再回到整张表内容 对表A进行查询select(条件) ,条件为空就可以了。。。
这是datasource一直等于表B的做法。。
思路二:把所有数据填充到一张表A里,,datagridview.datasource=表A。。再对表A进行过滤。
想有个按键(所有数据),再回到整张表内容 对表A过滤条件为空,,
就可以解决了。。
8. zii.widgets.grid.cgridview 怎么调用一个方法
<?php$this->widget('zii.widgets.grid.CGridView',array(
'id'=>'users-grid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
'uid',
'user',
//'pass',
'email',
array(
'name'=>'created',
'value'=>'date("Y-m-dH:i:s",$data->created)',
),
array(
'class'=>'CButtonColumn',
),
),
));?>
=============输出html============
array(
'name'=>'name',
'type'=>'html',
'value'=>'CHtml::link("$data->name","/?r=menu/itemlists/name/$data->name")',
),
============隐藏过滤字段======================
array(
'name'=>'picture',
'type'=>'html',
//隐藏picture过滤字段
'filter'=>false,
'value'=>'(!empty($data->image))?CHtml::image(Yii::app()->baseUrl.$data->picture,"",array("style"=>"width:100px;height:125px;")):CHtml::image(Yii::app()->baseUrl."/images/01.jpg","",array("style"=>"width:100px;height:125px;"))',
),
============select选择====================
array(
'name'=>'sex',
'filter'=>CHtml::dropDownList('Users[sex]',$model->sex,array(''=>'请选择','0'=>'女','1'=>'男')),
'value'=>'$data->sex>0?"男":"女"',
),
============头部名更改===================
array(
'name'=>'sex',
//头部名
'header'=>'Description',
'filter'=>CHtml::dropDownList('Users[sex]',$model->sex,array(''=>'请选择','0'=>'女','1'=>'男')),
'value'=>'$data->sex>0?"男":"女"',
),
===============pager使用[分页文字更改]=================
想显示首页和尾页,去掉样式就可以了
'summaryText'=&
gt;'共<span
style="color:red;">{count}</span>条 当前:<
spanstyle="color:red;">{page}</span>-<span
style="color:red;">{end}</span>条',
'pager'=>array(
'header'=>'',
'firstPageLabel'=>'首页',
'prevPageLabel'=>'上一页',
'nextPageLabel'=>'下一页',
'lastPageLabel'=>'尾页',
),
'template'=>'{items}{summary}{pager}',
===========新窗口打开链接===========
'columns'=>array(
'id',
'title',
array(
'name'=>'url',
'type'=>'raw',
'value'=>'CHtml::link($data->url,$data->url,array("target"=>"_blank","class"=>"aa"))',
),
===================================================================================
=================CGridView中实现批量删除========
CGridView中的columns添加
array(
'selectableRows'=>2,
'footer'=>'<buttontype="button"onclick="GetCheckbox();"style="width:76px">批量删除</button>',
'class'=>'CCheckBoxColumn',
'headerHtmlOptions'=>array('width'=>'33px'),
'checkBoxHtmlOptions'=>array('name'=>'selectdel[]'),
),
+++++++2.js代码
<scripttype="text/javascript">
functionGetCheckbox(){
vardata=newArray();
$("input:checkbox[name='selectdel[]']").each(function(){
if($(this).attr("checked")=="checked"){
data.push($(this).val());
}
});
if(data.length>0){
$.post("index.php?r=Users/delall",{'selectdel[]':data},function(data){
if(data=='ok'){
alert('删除成功!');
//window.open('index.php?r=Users/admin','indexFrame');
}else{
alert("删除失败");
}
});
}else{
alert("请选择要删除的选项!");
}
}
</script>
+++++++动作action
/*
*作用:批量删除
*/
publicfunctionactionDelall()
{
if(Yii::app()->request->isPostRequest)
{
$criteria=newCDbCriteria;
$criteria->addInCondition('uid',$_POST['selectdel']);
Users::model()->deleteAll($criteria);//Words换成你的模型
if(isset(Yii::app()->request->isAjaxRequest)){
echo'ok';
}else
$this->redirect(isset($_POST['returnUrl'])?$_POST['returnUrl']:array('index'));
}
else
thrownewCHttpException(400,'Invalidrequest..no');
}
9. C#用条件限制datagridview显示的内容
有两种方法:
如果你的datagridview 是和数据源绑定的,可以在查询语句上改
select sex when 0 then'男' when 1 then'女' else '不男不女' from table
如果你是手动给datagridview 赋值
假如你的 你所有查询的结果保存在一个table 里面
if(int i=0;i<table.rows.count;i++)
{
if(table.Rows[i]["sex"].ToString()=="0")
{
this.datagridview["sex",i].value="男";
}
else
{
this.datagridview["sex",i].value="女";
}
}
10. 如何更改CGridView组件中的droplist默认过滤条件
用CGridView实现了“文章”列表功能,
其中文章的状态分为Draft,Approved,Rejected,Published四个状态。
默认过滤情况下状态为空,即所有状态的文章都被查询出来显示在列表中。
如果要更改默认过滤情况,如默认显示Draft状态的文章,怎么处理呢?
一般这种情况,我们想到的是更改CGridView下拉列表过滤控件的默认取值,
但在使用CGridView的视图文件List.php中找不到可以添加的地方:
$this->widget('application.extensions.grid.FGridView', array(
'id'=>'deal-grid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
/*array(
'class'=>'CCheckBoxColumn',
'name'=>'id',
'value'=>'$data->id',
),*/
array(
'header'=>Yii::t('Trade','Status'),
'name'=>'status',
'value'=>'$data->getStatusText()',
'filter'=>$model->getStatusOptions(),
'htmlOptions'=>array('style'=>'width:10%;')
),
......
其实解决方法在控制器中,在actionList中添加如下代码即可:
$model = new Vendor('search');
if(isset($_GET['Vendor'])) {
$model->attributes=$_GET['Vendor'];
} else {
$model->status = 0;//set default status filter to 0
}
iefreer