这是一个Windows窗体.
Panel具有AutoScroll = True
我正在动态添加面板到主面板,最终超出主面板显示矩形.然后将标签,组合框和文本框添加到添加的面板.
如果我选择一个组合框或文本框,它会将主面板滚动条位置重置为0,并且组合框的下拉菜单将放置在屏幕X,Y上,如果滚动条没有重置,它应该在那里.
我正在考虑在选择控件时保存滚动位置.测试后,似乎滚动位置还没有重置,所以我可以在这里捕获它.然后在希望面板的某些事件上恢复滚动位置.我试图找出我将用于恢复滚动位置的确切事件.我也希望当我这样做时,下拉菜单将被放置在正确的x,y.
一个更好的解决方案是创建一个基于面板控件的自定义控件,并可能覆盖一个事件?这样我每次使用滚动面板时都不需要保存滚动位置,从而使我的项目变得杂乱无章.
我有一个我正在拆卸的iPhone应用程序.
据我所知,CBNZ指令是"比较并在非零上分支".和CBZ是"比较和分支零"
我无法在网上找到任何地方来确认这一点,但对我而言,似乎CBNZ由B9代表地址如此"0x B9 DC"而CBZ是"0x B3 DC".
完整地址为:DC B9 53 48 03 99 78 44 00 68 BF F1 74 EE 51 49
我将其修改为:DC B3 53 48 03 99 78 44 00 68 BF F1 74 EE 51 49
以前我在ARMv6中修补了相同的检查,虽然它由BNE"0x D1 30"表示,我修补了B"0x E0 32"
这:32 D1 5B 48 5C 49 78 44 79 44 00 68 09 68 AC F1
至:32 E0 5B 48 5C 49 78 44 79 44 00 68 09 68 AC F1
这完全符合我的预期,采取分支并继续我想要的.通常情况下,如果通过检查,它只需要这样的分支.
我认为将CBNZ修补到CBZ会有类似的结果,虽然看起来不是.
希望有人能帮助我理解.对不起,如果这不是一个论坛,我应该发布这样的问题虽然它似乎是一个好地方问.如果您需要更多信息,我将很乐意提供.
我正在使用HttpWebRequest发送和接收Web请求.
在响应之后,通常是gzip内容编码.有些计算机会收到deflate编码.其他一些计算机将接收身份编码.
我把它设置为读取gzip和deflate编码但不确定如何读取身份编码.
string ReturnString = "";
HttpWebRequest HttpWebRequest = (HttpWebRequest)WebRequest.Create(URL);
HttpWebRequest.ProtocolVersion = Version.Parse("1.1");
WebHeaderCollection WebHeaderCollection = HttpWebRequest.Headers;
HttpWebRequest.Accept = "application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
WebHeaderCollection.Add("Accept-Language: en-us");
WebHeaderCollection.Add("Accept-Encoding: gzip, deflate");
HttpWebRequest.KeepAlive = true;
HttpWebResponse HttpWebResponse = (HttpWebResponse)HttpWebRequest.GetResponse();
using (var mem = HttpWebResponse.GetResponseStream())
{
if (HttpWebResponse.ContentEncoding.ToLower().Contains("gzip"))
{
using (var gzip = new GZipStream(mem, CompressionMode.Decompress))
{
using (var reader = new StreamReader(gzip))
{
ReturnString = reader.ReadToEnd();
}
}
}
else if (HttpWebResponse.ContentEncoding.ToLower().Contains("deflate"))
{
using (var gzip = new DeflateStream(mem, CompressionMode.Decompress)) …Run Code Online (Sandbox Code Playgroud)