Как инициировать Управление. Изменить размер события без фактического изменения размеров?

Это известная проблема в версии 2.1, и она была исправлена ​​в 2.2 preview-1.

В ядре asp.net 2.1 используется AddDefaultIdentity, и впрыск становится до

[110 ]

, не сделает Roles включенным по умолчанию и всегда возвращает false для User.IsInRole.

Чтобы обойти это, вместо использования нового AddDefaultIdentity() для настройки Identity, просто используйте API старого стиля:

 services.AddIdentity()
    .AddRoleManager>()
    .AddDefaultUI()
    .AddDefaultTokenProviders()
    .AddEntityFrameworkStores();

Другим способом является то, что вы можете заменить фабрику UserClaimsPrincipal на одну с учетом роли. Добавьте ниже код в ConfigureService и обратитесь к UserRoles в DefaultIdentity

services.AddScoped, UserClaimsPrincipalFactory>();

6
задан gunr2171 6 January 2015 в 16:17
поделиться

3 ответа

Если Вы разделяете на подклассы Control, можно звонить OnResize непосредственно, или выставьте его на API:

 public void OnResize() {
     this.OnResize(EventArgs.Empty);
 }

Однако Вы не можете сделать этого для произвольных средств управления. Вы могли измениться Size туда и сюда? С другой стороны, Вы могли использовать отражение, но это - hacky:

 typeof (Control).GetMethod("OnResize",
     BindingFlags.Instance | BindingFlags.NonPublic)
     .Invoke(myControl, new object[] {EventArgs.Empty});
8
ответ дан 9 December 2019 в 22:41
поделиться

Просто измените размер использования управления: Управление. Размер = новый Размер (x, y);

Изменение размера управления будет, проблема a изменить размер события для того управления и управления должна изменить размер.

Кроме того, если Вы просто хотите перерисовать управление, затем сделайте: Управление. Делайте недействительным ();

1
ответ дан 9 December 2019 в 22:41
поделиться

Почему Вы хотите сделать это, и в какой сценарий? Можно назвать OnResize, например, когда Вы находитесь в самом управлении (т.е. в Вашем полученном классе управления). (Или через Отражение, когда Вы снаружи.)

Кроме этого, необходимо будет, вероятно, изменить размер управления, начиная с того, для именно это событие Resize :)

0
ответ дан 9 December 2019 в 22:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: