如何使用
二维数组用列表集合(项目:年份)中的项目填充表格?列表集合由使用 linq 查询的外部数据库填充。
视图模型
public class TableViewModel
{
public List<MovieViewModel> Movies { get; set; }
public MyViewModel[,] MovieValues { get; set; }
}
public class MyViewModel
{
public string MovieValue { get; set; }
}
public class MovieViewModel
{
public string Id { get; set; }
public string Name { get; set; }
public string Year { get; set; }
}
控制器
TableViewModel item;
item=new TableViewModel();
var AllMuvees = from d in db.MoviesTable
orderby d.Id
group d by d.Rating into M
select M;
List<MovieViewModel> OldMovies;
foreach (var a in M.AllMuvees)
{
OldMovies.Add(new MovieViewModel()
{
Id = g.MovieId.ToString(),
Name =g.MovieName,
Year = g.MovieYear.ToString()
});
}
for (int i = 0; i < 10; i++)
{
for (int j = 0; j < 10; j++)
{
item.MovieValues[i, j] = new MyViewModel()
{ MovieValues = *****
(I need help here: I want to fill this with the Years from OldMovies)};
}
}
return View(item);
您是否尝试过查看列表视图项,然后填充列表视图?
如果没有,那么您可以轻松使用数组列表,甚至可以将其填充到像波纹管这样的 foreach 循环中?
foreach( var v in Muvees )
{ListViewItem movieToAdd = new ListViewItem();
movieToAdd.Text = v.movieid;
movieToAdd.SubItems.Add(v.rating);
movieToAdd.SubItems.Add(v.movieName);
listOfMovies.Items.Add( movieToAdd ).BackColor = Color.Green;} //add colour just because you can
排列子项目,但您的列表已列出
然后在表单中右键单击表单中的列表视图(列表电影)并添加列
对不起,如果我误解了这个问题,但我认为这就是你需要的?
10x10 i,j 的目的是什么?
您可以通过列表[索引]获取OldMovies中的每个MovieViewModel,并且该索引必须介于0到OldMovies.Count之间。
for(int i = 0; i < OldMovies.Count; i++)
{
var movie = OldMovies[i];
//movie.Name
//movie.Year
}