Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 动态面板元素添加和滚动条_C#_.net_Winforms_Panel - Fatal编程技术网

C# 动态面板元素添加和滚动条

C# 动态面板元素添加和滚动条,c#,.net,winforms,panel,C#,.net,Winforms,Panel,我编写了一个函数来动态地向“面板”添加元素 DialogMessage是UserControl,在所有组件上都有属性“AutoSize=true”。 此面板具有AutoScroll属性,因此具有滚动条。 问题在于,根据滚动条的位置,元素以不同的方式添加。如果滚动条位于顶部,则根据需要添加所有滚动条 但如果在添加底部滚动条时,添加的项目出错 请告诉我我做错了什么以及如何修复它?非常感谢。抱歉,英语不好将控件放在面板内时,您必须补偿滚动位置: 基本上,尝试使用以下行: d.Location =

我编写了一个函数来动态地向“面板”添加元素

DialogMessage是UserControl,在所有组件上都有属性“AutoSize=true”。 此面板具有AutoScroll属性,因此具有滚动条。 问题在于,根据滚动条的位置,元素以不同的方式添加。如果滚动条位于顶部,则根据需要添加所有滚动条

但如果在添加底部滚动条时,添加的项目出错


请告诉我我做错了什么以及如何修复它?非常感谢。抱歉,英语不好

将控件放在面板内时,您必须补偿滚动位置:

基本上,尝试使用以下行:

d.Location = new Point(0, panel1.AutoScrollPosition.Y + Point.Y);

请添加您正在使用的API的信息和标签好吗?我的猜测是windows窗体,但如果您只添加正确的标记,您将接触更多的人。现在,我使用FlowLayoutPanel解决了此问题,但我仍然想知道,我做错了什么:)
d.Location = new Point(0, panel1.AutoScrollPosition.Y + Point.Y);