我最近使用treeview组件来实现我的html编辑器。我使用的编译器是Visual Studio Community 2017。
我使用imagelist来设置树视图的treenodes图像。 选择treenode时,它会在treenode上显示带笔的纸张。 如果未选择treenode,它将在treenode显示没有笔的纸张。
我的代码中使用的代码:
enum ImageList : int { Blank, BlankWithPen, Document, DocumentWithPen, DocumentWithLock, Locked }
TreeView1.SelectedNode.ImageIndex = (int)ImageList.Blank;
TreeView1.SelectedNode.SelectedImageIndex = (int)ImageList.BlankWithPen;
图像列表中使用的图像
在treenode
处没有额外行的图片我遇到的现象是图像显示在treenode有一条额外的线条。
在treenode
处添加额外行的图片这种现象在我编写并编写程序几次并运行后显得更加明显。
虽然我发现了这种现象,但我试图修复它。我检查了这些原始图像,这些图像周围没有边框。
所以,我删除了图像列表的所有图像,然后再次将图像重新加载到图像列表中,重新编译程序后没有改变任何东西并运行,这种现象消失了。
这种现象一次又一次地出现,当时我做了一些小修改。并可以通过再次将图像重新加载到Imagelist来修复。
显然,这个问题与编码无关。
我想知道为什么会出现这种现象,如何永久解决这个问题?
答案 0 :(得分:0)
最后,我将图像放入Properties的Resources中,然后将图像重新加载到imageList。
public class HomeController : Controller
{
private readonly UserManager<ApplicationUser> _userManager;
private readonly SignInManager<ApplicationUser> _signInManager;
private readonly ApplicationDbContext _context;
public HomeController(
UserManager<ApplicationUser> userManager,
SignInManager<ApplicationUser> signInManager,
ApplicationDbContext context)
{
_userManager = userManager;
_signInManager = signInManager;
_context = context;
}
public async Task<IActionResult> ProfileView()
{
var user = await _userManager.GetUserAsync(User);
if (user == null)
{
return NotFound($"Unable to load user with ID '{_userManager.GetUserId(User)}'.");
}
return View(user);
}
[HttpPost]
public async Task<IActionResult> ProfileView(ApplicationUser users)
{
if (!ModelState.IsValid)
{
return View();
}
var user = await _userManager.GetUserAsync(User);
if (user == null)
{
return NotFound($"Unable to load user with ID '{_userManager.GetUserId(User)}'.");
}
user.FirstName = users.FirstName;
user.LastName = users.LastName;
_context.Users.Update(user);
await _context.SaveChangesAsync();
await _signInManager.RefreshSignInAsync(user);
return RedirectToAction();
}
}