dotnet / dotnet/aspnetcore

Pass boolean value to draggable attribute

Open
#60,137 1 comment 0 reactions 0 assignees View on GitHub
area-blazor
Dominant language
C#
Stars
38.4k
Forks
10.9k
Avg merge
2d 5h
Merged PRs (30d)
276

Description

### Is there an existing issue for this?

- [x] I have searched the existing issues

### Is your feature request related to a problem? Please describe the problem.

In blazor, when you add the `draggable` attribute using a boolean value, it produces markup with just the text `draggable`. For example

```razor

Am I really draggable

@code {
public bool MyBool { get; set }
}
```

Will produce this output `

Am I really draggable
`.

This causes problems in browsers (such as chrome) as they seem to require a value for the draggable attribute, `true` or `false`. With the output blazor produces in this situation the browser sometimes allows for dragging and other times does not. It's not clear to me exactly how the browser is behaving but it is spotty and broken at best.

### Describe the solution you'd like

for this particular attribute I would like blazor to output the `true` or `false` value as the attribute value. For example:

```razor

I am not draggable

I am draggable

```

would produce this markup

```html

I am not draggable

I am draggable

```

### Additional context

You can work around this behavior by calling `.ToString()` on your bool, and the current behavior is the documented and expected behavior of blazor. However; if a dev makes the mistake of setting the `draggable` attribute to a bool value (like my colleague did) it is not clear why the drag/drop functionality is broken and hours can be wasted trying to solve the issue.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.