我的算法怎么不行阿!!!急阿

竹君子 2003-08-21 12:48:03
想把多余的项去掉的
但不知道错哪里的
帮我 看看!

int i=0;
int k=0;
int j=i+1;
//foreach (DataGridItem dgi in dgrd3.Items)
//{

// ItemId[i] = dgi.Cells[0].Text;
//}
while(i<dgrd1.Items.Count-1&&j<=dgrd1.Items.Count-1)

{

if(dgrd1.Items[j].Cells[0].Text==dgrd1.Items[i].Cells[0].Text)
{
dgrd1.Items[j].Cells[0].Text="";
k++;
j++;
}
else
{
k++;
i+=k;
j=i+1;
k=0;
}
}
...全文
24 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
chcpu 2003-08-22
  • 打赏
  • 举报
回复
…………
for(int i=0;i<ds.Tables["Gaccount"].Rows.Count-1;i++){
for(int j=i+1;j<ds.Tables["Gaccount"].Rows.Count-1;j++){

if(ds.Tables["Gaccount"].Rows[i]["GroupName"]==ds.Tables["Gaccount"].Rows[j]["GroupName"]){
ds.Tables["Gaccount"].Rows[j]["GroupName"]="";


}

}
}

dgrd1.DataSource=ds.Tables["Gaccount"];

dgrd1.DataBind(); //绑定组列表
竹君子 2003-08-22
  • 打赏
  • 举报
回复
好了!!!!
加上等号就可以了
原来它是按分页的大小来显示的
for(int i=0;i<=dgrd1.Items.Count-1;i++)
{
for(int j=i+1;j<=dgrd1.Items.Count-1,j++)
竹君子 2003-08-22
  • 打赏
  • 举报
回复
谢谢 sgsh51()
有点改进了
但有的项还是有问题阿
竹君子 2003-08-22
  • 打赏
  • 举报
回复
在数据原改了
一点没有效果阿

String strSQL="Select GroupName,UserAccount FROM GroupAccount";
SqlDataAdapter objAdapter=new SqlDataAdapter(strSQL, conn);
DataSet ds = new DataSet();
objAdapter.Fill(ds,"Gaccount");





int i=0;


for(int j=1;j<ds.Tables["Gaccount"].Rows.Count-1;j++)

{

if(ds.Tables["Gaccount"].Rows[i]["GroupName"]==ds.Tables["Gaccount"].Rows[j]["GroupName"])
{
ds.Tables["Gaccount"].Rows[j]["GroupName"]=null;


}
else
{

i=j;
}

}

dgrd1.DataSource=ds.Tables["Gaccount"];

dgrd1.DataBind(); //绑定组列表
sgsh51 2003-08-22
  • 打赏
  • 举报
回复
for(int i=0;i<dgrd1.Items.Count-1;i++)
{
for(int j=i+1;j<dgrd1.Items.Count-1,j++)
{
if(dgrd1.Items[j].Cells[0].Text==dgrd1.Items[i].Cells[0].Text)
dgrd1.Items[j].Cells[0].Text="";
}
}
帮你改了一下,看看是否可以实现了
竹君子 2003-08-22
  • 打赏
  • 举报
回复
为什么呢?
webdiyer 2003-08-22
  • 打赏
  • 举报
回复
应该修改DataSource的数据,而不是修改DataGrid。
竹君子 2003-08-22
  • 打赏
  • 举报
回复
改成这样还时不行。
int i=0;

int j=1;

while(i<dgrd1.Items.Count-1&&j<=dgrd1.Items.Count-1)

{

if(dgrd1.Items[j].Cells[0].Text==dgrd1.Items[i].Cells[0].Text)
{
dgrd1.Items[j].Cells[0].Text="";

j++;
}
else
{

i=j;
j=i+1;

}
}
竹君子 2003-08-22
  • 打赏
  • 举报
回复
我想把第一列重复的多余项设为空白阿
救命!
wolve 2003-08-21
  • 打赏
  • 举报
回复
老大,你要完成什么功能啊,为什么有这么多变量啊。
foreach (DataGridItem dgi in dgrd3.Items)
就这句就行了,你写这么多
seesea125 2003-08-21
  • 打赏
  • 举报
回复
思路严重混乱
guoyan19811021 2003-08-21
  • 打赏
  • 举报
回复
晕!?

62,041

社区成员

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

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

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

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