ant-design-blazor/components/input/TextArea.razor
Hao Sun 961a5ca02b fix(module: textarea): fix style string format and auto-size issues (#2001)
* fix(module:textarea): fix style string format

* seprate inner and outer style

* fix AutoSize

* fix custom style

* Update site/AntDesign.Docs/Demos/Components/Input/demo/Area.md

Co-authored-by: James Yeung <shunjiey@hotmail.com>

* Move SetStyle to styleHelper

* Update TextArea.razor

* Update TextArea.cs

* fix unit test

Co-authored-by: James Yeung <shunjiey@hotmail.com>
2021-10-29 13:30:52 +08:00

73 lines
2.9 KiB
C#

@namespace AntDesign
@inherits Input<string>
@{
Dictionary<string, object> attributes =
new Dictionary<string, object>()
{
//{ "onchange", EventUtil.AsNonRenderingEventHandler<ChangeEventArgs>(e => OnChangeAsync(e)) },
//{ "onblur", EventUtil.AsNonRenderingEventHandler<FocusEventArgs>(e => OnBlurAsync(e)) },
//{ "oninput", EventUtil.AsNonRenderingEventHandler<ChangeEventArgs>(e => OnInputAsync(e)) },
//{ "onkeypress", EventUtil.AsNonRenderingEventHandler<KeyboardEventArgs>(e => OnKeyPressAsync(e)) },
//{ "onkeyup", EventUtil.AsNonRenderingEventHandler<KeyboardEventArgs>(e => OnKeyUpAsync(e)) },
//{ "onkeydown", EventUtil.AsNonRenderingEventHandler<KeyboardEventArgs>(e => OnkeyDownAsync(e)) },
//{ "onfocus", EventUtil.AsNonRenderingEventHandler<FocusEventArgs>(e => OnFocusAsync(e)) },
{ "onchange", CallbackFactory.Create(this, OnChangeAsync) },
{ "onblur", CallbackFactory.Create(this, OnBlurAsync) },
{ "oninput", CallbackFactory.Create(this, OnInputAsync) },
{ "onkeypress", CallbackFactory.Create(this, OnKeyPressAsync) },
{ "onkeyup", CallbackFactory.Create(this, OnKeyUpAsync) },
{ "onkeydown", CallbackFactory.Create(this, OnkeyDownAsync) },
{ "onfocus", CallbackFactory.Create(this, OnFocusAsync) },
{ "value", CurrentValueAsString },
{ "placeholder", Placeholder },
{ "id", Id },
//{ "style", Style },
{ "class", ClassMapper.Class },
{ "disabled", Disabled },
{ "readonly", ReadOnly },
};
if (AutoSize == false)
{
attributes.Add("style", _heightStyle + Style);
}
if (Attributes != null)
{
Attributes.Keys.ForEach(key => { attributes[key] = Attributes[key]; });
}
}
@if (ShowCount)
{
<div class="ant-input=textarea ant-input-textarea-show-count" data-count="@(Value?.Length ?? 0)">
@if (Suffix != null)
{
<span class="@_warpperClassMapper.Class">
<textarea @ref="Ref" @attributes="attributes" @onchange:stopPropagation="@StopPropagation" @onblur:stopPropagation="@StopPropagation"/>
@Suffix
</span>
}
else
{
<textarea @ref="Ref" @attributes="attributes" @onchange:stopPropagation="@StopPropagation" @onblur:stopPropagation="@StopPropagation"/>
}
<AntDesign.Text Style="float: right; pointer-events: none; white-space: nowrap; color: rgba(0, 0, 0, 0.45)">&nbsp;@($"/ {MaxLength}")</AntDesign.Text>
</div>
}
else
{
@if (Suffix != null)
{
<span class="@_warpperClassMapper.Class">
<textarea @ref="Ref" @attributes="attributes" @onchange:stopPropagation="@StopPropagation" @onblur:stopPropagation="@StopPropagation"/>
@Suffix
</span>
}
else
{
<textarea @ref="Ref" @attributes="attributes" @onchange:stopPropagation="@StopPropagation" @onblur:stopPropagation="@StopPropagation"/>
}
}